Comments (8)
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:
- #112642521 Can't push without tags
This comment, as well as the labels on the issue, will be automatically updated as the status in Tracker changes.
from git-resource.
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.
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.
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.
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.
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.
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.
That's reasonable. The optimal thing for us would be to not interact with their tags at all.
from git-resource.
Related Issues (20)
- git-config no way to set multivalues
- Changes outside of the specified Paths are triggering pipelines HOT 3
- Ubuntu packages in git-resource image outdated HOT 1
- CommitFilter --all-match
- Implement something like Quiet Period from Jenkins.
- Support blob/regex pattern for branch names HOT 1
- Unable to clone repository into /tmp/git-resource-repo-cache
- Alpine build failing due to openssl version 3 HOT 1
- support local mirrors, e.g. `git clone --reference` HOT 1
- detected dubious ownership in repository at '/tmp/build/get' HOT 9
- commit_filter not work HOT 1
- Provide a way to ignore error exit codes HOT 1
- Fetch all branch names of a repo (Something like fetch_tags for branches)
- Use Xtheirs and other switches with git rebase
- Cannot fetch/checkout specific version with no branch HOT 1
- Resource not updated when only submodule has changes (because of cache)
- Why is the "branch" parameter defined in the source field and not defined as mandatory in the "param" field?
- tag_regex not working as expected HOT 1
- Default disable_ci_skip to true
- `tag_filter` and `tag_regex` won't ignore whitespace-only values
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from git-resource.