After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 581547 - build -C shouldn't nuke modules that have .git
build -C shouldn't nuke modules that have .git
Status: RESOLVED FIXED
Product: jhbuild
Classification: Infrastructure
Component: general
unspecified
Other opensolaris
: Normal normal
: ---
Assigned To: Jhbuild maintainers
Jhbuild QA
Depends on:
Blocks:
 
 
Reported: 2009-05-06 03:46 UTC by James Andrewartha
Modified: 2009-05-06 18:21 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description James Andrewartha 2009-05-06 03:46:12 UTC
-C says "try to force checkout and autogen on failure". svn.py just runs another checkout when this occurs, but git.py removes the entire directory, forcing the download of the git repository again. While this is useful for the svn->git conversion, when a git module fails, the download is unnecessary and also removes changes committed to the local branch. I'm not familiar with git, but is there some way to force a clean checkout from the existing .git repository?
Comment 1 Frederic Peters 2009-05-06 07:28:00 UTC
"Force checkout" has also been updated in Subversion to wipe the directory first (as part of bug 580000), so all version controls are consistent in their "force checkout" action.

Perhaps it could be changed to offer wipe+checkout and force checkout as different options, and force checkout would "svn co" into the directory, or "git reset"; what was the situation you found the old svn force_checkout behaviour satisfactory ?
Comment 2 James Andrewartha 2009-05-06 07:52:20 UTC
What we actually wanted was the "force autogen on failure" part of -C. So breaking that out into a separate option seems like the best idea.
Comment 3 Frederic Peters 2009-05-06 18:21:14 UTC
commit d7969abf8c27579510313dc07f974ffaf26780b2
Author: Frederic Peters <fpeters@0d.be>
Date:   Wed May 6 20:17:21 2009 +0200

    change trycheckout to try autogen.sh before forcing a checkout
    
    The trycheckout option is used in both terminal and tinderbox
    frontends, typically for non-attended installations, in case of
    failure it will now first fallback to trying ./autogen.sh, and in
    case of a second failure go back to forcing a checkout, wiping the
    original directory. (GNOME #581547)

Tell me if it doesn't suit your needs.