Re: Another use of "@"?
On Thu, May 2, 2013 at 9:51 PM, Duy Nguyen <pclouds@gmail.com> wrote:
Show 18 quoted lines
> Hi,
>
> My setup is a bit peculiar where I do git development on three
> different machines. Say I updated branch long-branch-name on machine
> A. Then I continue my work on machine B. I would want to hard reset
> that long-branch-name on machine B before resuming my work. What I
> usually do is
>
> git co long-branch-name
> git diff A/long-branch-name
> git reset --hard A/long-branch-name
>
> but typing long-branch-name (even with TAB completion) is not fun.
> Could I do this (or something similar) instead?
>
> git co long-branch-name
> git diff A/@
> git reset --hard A/@
Maybe this would make more sense:
%git co long-branch-name %git reset --keep A/long-branch-name
If you have changes but they don't conflict, they will be carried over, and it they do conflict, the reset won't continue. I think in most cases there will be no conflict, so the times you need to do 'git diff' will be rather small.
Yes, many times I would like an idiom that would just replace something with the current branch, like your A/@, but I don't know where the right place for that would be.
Also, I feel we are missing some kind of branch, like a remote-specific upstream, so instead of 'git reset A/foo' you would do 'git reset A@{u}'. By default the remote-specific upstream would be the same name of the branch, but it could be configured.
Moreover, we should probably have common aliases distributed (e.g. git co).
--
Felipe Contreras