BUG: VCS status does not indicate problems if a tag was force-pushed
Problem
I have a repository I use. The authors created a tag v1.2.3 on commit A. Then, they deleted the tag and re-tagged, this time on a new commit B. vcs status indicates the repository is on v1.2.3, but it's actually on commit A. v1.2.3 actually points to B.
Expected behavior
vcs pull src then vcs status shall show I am on commit B rather than the tag.
Actual behavior
VCS lets me be on the wrong commit with no warnings or errors, it's silently the wrong commit.
@Ryanf55 As a suggestion I advise to keep use or add the .gitmodules + GitExtensions.
It tracks things like that and shows desync-ed modules. But as a disadvantage you have to convert and commit changes from vcstool file into the .gitmodules file.
We migrated off of gitmodules because of all the issues of desync, and the fact that we have a rolling HEAD for most of the 20 repositories to save time. We also develop in Linux, which it looks like GitExtensions is Microsoft specific.
We migrated off of
gitmodulesbecause of all the issues of desync, and the fact that we have a rolling HEAD for most of the 20 repositories to save time. We also develop in Linux, which it looks likeGitExtensionsis Microsoft specific.
And nevertheless you don't have to use .gitmodules for the checkout. You can keep checkout through the vcstool and track changes through the GitExtensions which tracks the .gitmodules status.
We also develop in Linux, which it looks like
GitExtensionsis Microsoft specific.
https://github.com/gitextensions/gitextensions/wiki/How-To:-run-Git-Extensions-on-Linux