* Git workflow with upstream repository
@ 2010-07-24 0:58 Bradley Wagner
2010-07-24 1:24 ` Avery Pennarun
0 siblings, 1 reply; 4+ messages in thread
From: Bradley Wagner @ 2010-07-24 0:58 UTC (permalink / raw)
To: git
Hi, I'm trying to figure out the best way to work with two remote
repositories: one origin and an upstream repository.
Basically, with one remote origin I do 'git fetch' and then a 'git
status' which tells me my status as compared to my remote at which
point I decide wether I want to rebase or pull/merge.
If I'm working with another remote repository 'upstream' that I
perhaps don't have permissions to and then my branches are not
tracking against, how would I do something similar to be able to first
see how my branch compares to the remote and then either rebase or
pull/merge.
Am I missing something in git status that allows me to see my status
as compared to another remote?
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Git workflow with upstream repository
2010-07-24 0:58 Git workflow with upstream repository Bradley Wagner
@ 2010-07-24 1:24 ` Avery Pennarun
2010-07-24 1:43 ` Bradley Wagner
0 siblings, 1 reply; 4+ messages in thread
From: Avery Pennarun @ 2010-07-24 1:24 UTC (permalink / raw)
To: Bradley Wagner; +Cc: git
On Fri, Jul 23, 2010 at 8:58 PM, Bradley Wagner
<bradley.wagner@hannonhill.com> wrote:
> If I'm working with another remote repository 'upstream' that I
> perhaps don't have permissions to and then my branches are not
> tracking against, how would I do something similar to be able to first
> see how my branch compares to the remote and then either rebase or
> pull/merge.
# show the commits in my local branch that aren't in upstream
git log upstream/master..
# show the commits in upstream that aren't in my local branch
git log ..upstream/master
# a cuter way to show the commits in upstream that aren't in my local branch
git shortlog ..upstream/master
# summarize the differences in upstream since we diverged (not
including my own changes)
git diff --stat upstream/master..
# summarize the differences between my branch and upstream (including
my changes and theirs)
# (note: three dots)
git diff --stat ...upstream/master
Have fun,
Avery
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Git workflow with upstream repository
2010-07-24 1:24 ` Avery Pennarun
@ 2010-07-24 1:43 ` Bradley Wagner
2010-07-24 2:39 ` Avery Pennarun
0 siblings, 1 reply; 4+ messages in thread
From: Bradley Wagner @ 2010-07-24 1:43 UTC (permalink / raw)
To: Avery Pennarun; +Cc: git@vger.kernel.org
Thanks, I'll check those out! So, I take it there is not a way to get
a simple message like what git status tells you when you're local
branch is behind the remote branch:
"Your branch is behind 'origin/master' by 1 commit, and can be fast-forwarded."
Is there even a concept of a fast-forward merge when pulling from a
remote repo that is not the remote to which your branches are
tracking?
Is it possible to rebase based on a branch that is *not* the branch
you're currently tracking? Is that what the --onto flag is for?
- Bradley
On Jul 23, 2010, at 9:24 PM, Avery Pennarun <apenwarr@gmail.com> wrot
> On Fri, Jul 23, 2010 at 8:58 PM, Bradley Wagner
> <bradley.wagner@hannonhill.com> wrote:
>> If I'm working with another remote repository 'upstream' that I
>> perhaps don't have permissions to and then my branches are not
>> tracking against, how would I do something similar to be able to first
>> see how my branch compares to the remote and then either rebase or
>> pull/merge.
>
> # show the commits in my local branch that aren't in upstream
> git log upstream/master..
>
> # show the commits in upstream that aren't in my local branch
> git log ..upstream/master
>
> # a cuter way to show the commits in upstream that aren't in my local branch
> git shortlog ..upstream/master
>
> # summarize the differences in upstream since we diverged (not
> including my own changes)
> git diff --stat upstream/master..
>
> # summarize the differences between my branch and upstream (including
> my changes and theirs)
> # (note: three dots)
> git diff --stat ...upstream/master
>
> Have fun,
>
> Avery
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Git workflow with upstream repository
2010-07-24 1:43 ` Bradley Wagner
@ 2010-07-24 2:39 ` Avery Pennarun
0 siblings, 0 replies; 4+ messages in thread
From: Avery Pennarun @ 2010-07-24 2:39 UTC (permalink / raw)
To: Bradley Wagner; +Cc: git@vger.kernel.org
On Fri, Jul 23, 2010 at 9:43 PM, Bradley Wagner
<bradley.wagner@hannonhill.com> wrote:
> Thanks, I'll check those out! So, I take it there is not a way to get
> a simple message like what git status tells you when you're local
> branch is behind the remote branch:
>
> "Your branch is behind 'origin/master' by 1 commit, and can be fast-forwarded."
As far as I know, any given branch can only "track" one particular
branch, and that message is only generated relative to the branch
you're tracking. You can adjust which one you're tracking by editing
.git/config.
> Is there even a concept of a fast-forward merge when pulling from a
> remote repo that is not the remote to which your branches are
> tracking?
Yes. Tracking branches are really just a notational convenience. In
fact, they don't do very much more than generating the above message.
(The other thing they do is make 'git pull' do something by default
when you don't give it any other parameters.)
You might enjoy this article:
http://eagain.net/articles/git-for-computer-scientists/
> Is it possible to rebase based on a branch that is *not* the branch
> you're currently tracking? Is that what the --onto flag is for?
Yes, it's possible. The question of when you do or don't need the
--onto option is a little more complex than that, but yes, that's
what's it's for, more or less.
Have fun,
Avery
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2010-07-24 2:39 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-07-24 0:58 Git workflow with upstream repository Bradley Wagner
2010-07-24 1:24 ` Avery Pennarun
2010-07-24 1:43 ` Bradley Wagner
2010-07-24 2:39 ` Avery Pennarun
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).