2017-04-18 120 views
-1

我是git的新手。为什么在这些git命令后什么也不做?

我的叉: Fork @ https://github.com/bigopon/binding

主回购:Aurelia @ https://github.com/aurelia/binding

我的命令(以相同的顺序执行):

git clone https://github.com/bigopon/binding.git 
cd binding 
git remote add upstream https://github.com/aurelia/binding.git 
git fetch upstream 
git rebase upstream/master 

我有冲突,以解决该问题后:

git add * 
git commit -m "Resolved" 

我得到了这些消息es:

您目前正在'36215e6'上重新设置分支'master'。 没有提交,工作目录干净

而且

git push origin master 

什么都不做

更新:下面是发生了什么事:

C:\Users\Bigo\Desktop\aurelia-forks>git clone 
https://github.com/bigopon/binding.git 
Cloning into 'binding'... 
remote: Counting objects: 4560, done. 
remote: Total 4560 (delta 0), reused 0 (delta 0), pack-reused 4560R 
Receiving objects: 100% (4560/4560), 4.52 MiB | 939.00 KiB/s, done. 
Resolving deltas: 100% (3143/3143), done. 
Checking connectivity... done. 

C:\Users\Bigo\Desktop\aurelia-forks>cd binding 

C:\Users\Bigo\Desktop\aurelia-forks\binding>git remote add upstream https://github.com/aurelia/binding.git 

C:\Users\Bigo\Desktop\aurelia-forks\binding>git fetch upstream 
remote: Counting objects: 99, done. 
remote: Total 99 (delta 60), reused 60 (delta 60), pack-reused 39 
Unpacking objects: 100% (99/99), done. 
From https://github.com/aurelia/binding 
* [new branch]  master  -> upstream/master 
* [new tag]   1.2.1  -> 1.2.1 
* [new tag]   1.1.1  -> 1.1.1 
* [new tag]   1.2.0  -> 1.2.0 

C:\Users\Bigo\Desktop\aurelia-forks\binding>git rebase upstream/master 
First, rewinding head to replay your work on top of it... 
Applying: Add self binding behavior section 
Using index info to reconstruct a base tree... 
M  doc/article/en-US/binding-binding-behaviors.md 
Falling back to patching base and 3-way merge... 
Auto-merging doc/article/en-US/binding-binding-behaviors.md 
CONFLICT (content): Merge conflict in doc/article/en-US/binding-binding-behaviors.md 
Failed to merge in the changes. 
Patch failed at 0001 Add self binding behavior section 
The copy of the patch that failed is found in: 
    C:/Users/Bigo/Desktop/aurelia-forks/binding/.git/rebase-apply/patch 

When you have resolved this problem, run "git rebase --continue". 
If you prefer to skip this patch, run "git rebase --skip" instead. 
To check out the original branch and stop rebasing, run "git rebase --abort". 


C:\Users\Bigo\Desktop\aurelia-forks\binding> 

我该怎么办吗?正如@ merlin2011在他的回答中所暗示的,我不应该在rebase期间提交

+0

为什么你'rebase'在这里?我没有看到它的需要。 – ashmaroli

+0

请编辑该问题,以包括当混乱发生时你期望发生的事情。 – ashmaroli

+0

@ashmaroli我已经更新了所有输出的问题 – bigopon

回答

1

错误是因为rebase命令,这是不必要的。 rebase重写在master分支上未建议的当前分支的git索引历史记录。

您应该只需要pull即可将更改同步到master

git remote add upstream [...] 
git pull upstream master 

既然你还没有开始的分支工作呢,我建议您设置您的分支:

git reset --hard upstream/master -- 
git push origin master 
+0

嗨,当我得到这个时,我该怎么办? ![结果](http://image.prntscr.com/image/59d0089c89b94101b8104fac9aab8b10.png) 在推'origin master'之前我确实拉过'上游主人'# – bigopon

+0

按照你的建议(重置 - 在拉之前),现在我的回购是最新的,但是旧的提交历史(合并到主回购)仍然存在。你能告诉我应该怎么做才能摆脱它吗?因为它表示我的分支现在3提交主回购 – bigopon

+1

'git reset --hard'到最后一个''上游。 'git reset --hard 36215e6',然后用'--force'开关强制更新远程分支:'git push origin master --force' – ashmaroli

2

git rebase期间解决冲突之后,接下来的步骤是添加并继续rebase。你不应该在rebase期间使用git commit。相反,在修复冲突之后,您应该执行以下步骤。

# First fix conflicts 
git add ConflictedFile1 ConflictedFile2 
git rebase --continue 

此外,如果您是在原产地库上衍合分支,这相当于重写你的GitHub叉的公共历史,所以你必须git push -f origin master使这项工作,由于主有不同的历史。

+0

是的,我做了,问题中的消息是我得到的 – bigopon

+0

@bigopon,是的,你做了什么? – merlin2011

+0

我的意思是我添加了该文件,然后运行提交命令并附带消息“已解决” – bigopon