vcstool icon indicating copy to clipboard operation
vcstool copied to clipboard

BUG: VCS status does not indicate problems if a tag was force-pushed

Open Ryanf55 opened this issue 1 year ago • 4 comments

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 avatar Jun 04 '24 22:06 Ryanf55

@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.

andry81 avatar Jun 07 '24 14:06 andry81

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.

Ryanf55 avatar Jun 07 '24 19:06 Ryanf55

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.

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.

andry81 avatar Jun 08 '24 11:06 andry81

We also develop in Linux, which it looks like GitExtensions is Microsoft specific.

https://github.com/gitextensions/gitextensions/wiki/How-To:-run-Git-Extensions-on-Linux

andry81 avatar Jun 08 '24 13:06 andry81