Giter Club home page Giter Club logo

Comments (8)

concourse-bot avatar concourse-bot commented on July 20, 2024

Hi there!

We use Pivotal Tracker to provide visibility into what our team is working on. A story for this issue has been automatically created.

The current status is as follows:

This comment, as well as the labels on the issue, will be automatically updated as the status in Tracker changes.

from git-resource.

vito avatar vito commented on July 20, 2024

What's fetching with tags or creating them? We also use tags and don't experience this behavior. Agreed that it should be something you can turn off, but I'm not sure about by default; the idea is that if there are tags there it's because your script created them, so you probably want them pushed.

from git-resource.

njbennett avatar njbennett commented on July 20, 2024

As far as I can tell, the issue is that we (Billing & Accounts Management) share our repo with another team (Apps Manager). They use tags to mark commits deployed to various CI environments and to mark commits released in various versions of PCF; they delete the tags that associate commits with CI environments in their GoCD scripts and recreate them when they push new commits to those environments.

We've always just ignored these tags, because we were pushing with GoCD scripts rather than through Concourse. Concourse is basically making us more aware of the weird thing our sister team is doing with tags, and forcing us to mirror that behavior in our CI. So this might just be something that can be chalked up to "doing something weird with Github tags + odd team/repo structure."

from git-resource.

vito avatar vito commented on July 20, 2024

Gotcha. I'm just confused as to how the tags are being introduced to the local repo in the first place. When the repo is fetched, we don't fetch the tags; any tags being pushed must have been created in your script, which Concourse takes to mean that you want them pushed. Or I may be wrong, and it is fetching the tags, and normally pushing does a no-op, but if the tags have since changed remotely it'll try to clobber them?

Can you confirm that your job isn't creating any tags? I'm not totally against adding this param, I just want to make sure it's for the "right reason".

from git-resource.

njbennett avatar njbennett commented on July 20, 2024

We're pretty sure that we're not making tags. The only times "tag" appears in our ci repo are to delete them, and in reference to our Ubuntu image.

How are you fetching without tags? It looks like git fetch, clone, and pull all bring in all the tags on the branches involved by default, and maybe even that tags can't, or shouldn't, not be pulled down.

from git-resource.

vito avatar vito commented on July 20, 2024

Yep looks like a fresh clone does bring in the tags. I must have been thinking of something else. In that case it's probably that after cloning, the tag has changed remotely, and the git push --tags ends up trying to roll it back.

I would rather have the tags not be present after fetching. They're not really meant to be there, especially as the caching semantics get a little weird (it'll have cached tags that were present only when the cache is warmed).

from git-resource.

xoebus avatar xoebus commented on July 20, 2024

Having tags change the commit that they're pointing at is a little scary and a misuse of tags. If you want a named pointer that can move to different commits then branches are the way to go. I'm going to close this as a WONTFIX but I'd probably accept a PR that caused us to not fetch tags when we clone a repository.

from git-resource.

njbennett avatar njbennett commented on July 20, 2024

That's reasonable. The optimal thing for us would be to not interact with their tags at all.

from git-resource.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.