-
Notifications
You must be signed in to change notification settings - Fork 93
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
submodules break release-opinion #60
Comments
fyi I also tried this using git 1.9.5 and got the same results. |
Adding
This is just showing that the root cause is that Grgit interprets the Still digging to see why that's the case. |
OK, next I tried:
Now rerunning
So as long as the submodules are fully checked out, it looks like it works just fine. Let me know if that also resolves it for you. |
Feel free to reopen if that didn't resolve the issue for you. |
Sorry I wasn't able to get back to you promptly. I'm not getting the behavior you're describing-- the git submodule init/update doesn't change how grgit/jgit sees the submodule:
I added the print of |
I downloaded jgit.sh and tried it on my repo. And it's also reporting that the submodule is modified:
So this appears to be a JGit bug. :( |
After some more testing, I've realized this problem only happens on Mac OS X. (I'm on 10.9.5.) |
fyi, I've filed JGit 467631 |
Thanks. If/when it gets fixed, I can bump the JGit version. |
Confirming that the JGit bug is still open as of 10/22/2017. |
I've committed a fix for this on JGit here. |
Just doing some cleanup. In theory, this should work now since the issue says it was fixed in 5.2 and grgit's on 5.9. Thanks @vivin for fixing. And feel free, anyone, to reopen if this is still occuring. |
Using submodules breaks grgit's release-opinion. Even when run directly on a tag (e.g., '1.1.0') it will produce versions as if it had uncommitted changes (e.g., '1.1.1-dev.0.uncommitted+2db5eac').
I've written up a minimal project that reproduces this problem here.
If we checkout the project:
and then checkout a tag that doesn't use a submodule, it works fine:
But if we then checkout a tag that does use a submodule, it produces 'dirty' version numbers (despite git describe being simple):
One other thing that popped out at me is that in the submodule-using tag, grgit outputs 'Inferred project ...', but it doesn't output this in the tag that doesn't use a submodule. This seems to imply that grgit is going down different code-paths for the two tags.
The text was updated successfully, but these errors were encountered: