Re: Git pull --rebase with strategy ours doesn't work (possibly bug)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Excuse me for russian locale, the part with error in english locale:

remote: Counting objects: 5, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
>From /home/kravitz/git-test/A
 * branch            master     -> FETCH_HEAD
First, rewinding head to replay your work on top of it...
Already applied: 0001 3rd
/usr/libexec/git-core/git-rebase: line 157:
/home/kravitz/git-test/C/.git/rebase-merge/rewritten: No such file or
directory
All done.
kravitz@Vor


2011/6/13 Dmitry S. Kravtsov <idkravitz@xxxxxxxxx>:
> Hi,
>
> So here the steps to reproduce:
>
> $ git init A
> Initialized empty Git repository in /home/catsadmin/git-test/A/.git/
> $ (cd A && echo 123 > file && git add file && git commit -m "1st")
> [master (root-commit) 1055edf] 1st
> Â1 files changed, 1 insertions(+), 0 deletions(-)
> Âcreate mode 100644 file
> $ git clone A B
> Cloning into B...
> done.
> $ git clone A C
> Cloning into C...
> done.
> $ (cd B && echo 333 >file && git commit -am "2nd")
> [master 4e9cd67] 2nd
> Â1 files changed, 1 insertions(+), 1 deletions(-)
> $ (cd A && git pull ~/git-test/B master)
> remote: Counting objects: 5, done.
> remote: Total 3 (delta 0), reused 0 (delta 0)
> Unpacking objects: 100% (3/3), done.
> From /home/catsadmin/git-test/B
> Â* branch      Âmaster   -> FETCH_HEAD
> Updating 1055edf..4e9cd67
> Fast-forward
> Âfile | Â Â2 +-
> Â1 files changed, 1 insertions(+), 1 deletions(-)
> $ (cd C && echo 111 > file && git commit -am "3rd")
> [master 1c4a368] 3rd
> Â1 files changed, 1 insertions(+), 1 deletions(-)
> $ cd C
> $ git push origin master
> To /home/catsadmin/git-test/A
> Â! [rejected] Â Â Â Âmaster -> master (non-fast-forward)
> error: failed to push some refs to '/home/catsadmin/git-test/A'
> To prevent you from losing history, non-fast-forward updates were rejected
> Merge the remote changes (e.g. 'git pull') before pushing again. ÂSee the
> 'Note about fast-forwards' section of 'git push --help' for details.
>
> So my idea is to create a straight line history, that will look like
> "1st"---"2nd"---"3rd",
> and from git-rebase man page I read, that strategy ours allows us to
> discard conflicing changes in favor
> of ours.
>
> $ git pull --rebase -s ours origin master
> remote: Counting objects: 5, done.
> remote: Total 3 (delta 0), reused 0 (delta 0)
> Unpacking objects: 100% (3/3), done.
> From /home/catsadmin/git-test/A
> Â* branch      Âmaster   -> FETCH_HEAD
> First, rewinding head to replay your work on top of it...
> Already applied: 0001 3rd
> /usr/bin/git-rebase: line 157:
> /home/catsadmin/git-test/C/.git/rebase-merge/rewritten: ÐÐÑ ÑÐÐÐÐÐ
> ÑÐÐÐÐ ÐÐÐ ÐÐÑÐÐÐÐÐ
> All done.
>
> This message not only looks weird, it also discard my "3rd" commit
> from master tree:
> $ git branch
> * master
> $ git log
> commit 4e9cd6730b1215b22b65fbcc6cbf87e331e5eb92
> Author: Your Name <you@xxxxxxxxxxx>
> Date: Â Mon Jun 13 13:53:27 2011 +1100
>
> Â Â2nd
>
> commit 1055edf3618787ea53231ed6f4b00dfe571c8940
> Author: Your Name <you@xxxxxxxxxxx>
> Date: Â Mon Jun 13 13:52:53 2011 +1100
>
> Â Â1st
>
> Am I wrong at something?
>
> --
> Dmitry S. Kravtsov
>



-- 
Dmitry S. Kravtsov
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]