Thread (4 messages) flat view 4 messages, 3 authors, 2016-06-15

Re: RFC: checkout/temporary branch switch restoring modification times

From: Justin Frankel <hidden>
Date: 2016-06-15 22:49:41

Jonathan Nieder wrote:
Hi,

Justin Frankel wrote:
quoted
git cop master
; build
git cop some-branch-that-affects-lots-of-files
; edit some things, commit
git cop master
; build (fast, nothing changed)
Interesting.  I guess the intended use is that you only ever build
on the master branch?
The idea is that you're often building on a particular branch, but want 
to switch to another branch temporarily to either do a quick edit or to 
browse some code.
Have you ever tried the contrib/workdir/git-new-workdir script?
I find it fits the use case well for me:

 git clone $repo
 cd repo
 make
 # oh, shoot! I need to try something out real quick.
 cd ..
 git new-workdir repo repo2 origin/master
 cd repo2
 git am patch-to-test
 make
 # okay, back to what I was doing...
 cd ../repo

Maybe it could be helpful for you, too?

Limitations:

 - requires a file system with support for symbolic links
   (I think Pierre Habouzit and Junio discussed changing
   that);

 - workdirs share refs.  If you update master in one
   workdir and another workdir also has master checked
   out, the new changes will appear as staged changes.

 - workdirs do not share HEAD.  "git gc" from one
   workdir can completely trash another if it has a
   detached HEAD pointing to a commit that is not part
   of any local or remote branch.

Ahh, that would be great.  Unfortunately my filesystem often doesn't 
support symlinks...

-Justin
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help