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

Re: sharing between local "work" and "nightly build" git repos

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:43:21

"David Frech" [off-list ref] writes:
I'd like to share as much as possible between the two repos. My naive
first attempt was to clone the local repo (~david/git) using -l and -s
(which I admit I do not completely understand). This sort of worked,
but one issue is that doing a "git pull" in nightly is going to pull
from the *locally*-cloned repo, not from the main git. Another is that
a checkout in nightly failed with the obscure error:

[david@tashtego ~/git-nightly]% git checkout -b nightly-next next
git checkout: updating paths is incompatible with switching branches/forcing
Did you intend to checkout 'next' which can not be resolved as commit?

I assume this is because too much state is being shared the repos, and
something is unfinished in the "git" directory.
You assumed wrong.  "-l and -s" does not have to do anything
with the above symptoms.

git-clone helps people by setting up the new repository to
follow where you cloned from, but there is no rule that you
cannot change it.  Look at .git/config in the nightly repository
and find [remote "origin"] section; update its URL to whichever
repository you would want to track from and you are done.

"git checkout -b nightly-next next" is telling git to:

 - create a new branch nightly-next starting from 'next'
 - check it out

You most likely would want to fork off of "origin/next", not
'next' which probably does not exist in your repository.

If you are willing to redo the nightly repository from scratch,
I would probably recommend using --reference option when
cloning, like this:

 $ git clone --reference ~david/git git://git.kernel.org/... ~/nightly-git
 $ cd ~/nightly-git
 $ git checkout --track -b next origin/next

Then a nightly update would go like this:

 $ cd ~/nightly-git
 $ git pull origin next
 $ make clean
 $ make test || barf
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help