如果Heads是相同的话,拉动和推动具有不同历史的git Repo会影响拉动请求吗?

时间:2018-02-08 10:58:18

标签: git github

我有一个分叉的上游仓库,我从两次撤出并提交我合并到我的原点并通过拉取请求合并到上游(不是我的仓库)。现在>>> np.genfromtxt('so.txt').reshape(-1,4) array([[ 1., 4., -69., -64.], [ 1., 5., -57., -56.], [ 1., 6., -59., -56.], [ 1., 7., -69., -61.], [ 1., 8., -53., -53.], [ 1., 9., -69., -62.], [ 1., 10., -65., -58.], [ 1., 11., -69., -58.]])

  

您的分行和'上游/主人'有分歧,有3和31   每个都分别提交不同的提交。

当我运行git pull时,会创建一个新的合并提交,因为我的提交未被检测到与请求合并到上游的pull请求相同。

如果我通过pull在本地创建合并提交,那么我提前做的那3次提交是否会影响未来的拉请求,因为它们在我的历史记录中但不是上游历史记录? < / p>

另外,我想知道为什么我在本地提交之前的第一次合并现在在从上游合并时被列为上游提交?

2 个答案:

答案 0 :(得分:1)

  

如果我通过pull在本地创建合并提交,那么我前面提交的3个提交是否会影响未来的pull请求,因为它们在我的历史记录中而不是上游历史记录中?

在执行创建合并提交的git pull之后,您将采取的典型下一步是git push您的本地分支到远程。这将包含自远程和本地分支分歧以来您所做的3次提交中的独特工作。所以这里通常的工作流程就是你会以某种方式将你的工作带入远程分支。

为了更好地理解您看到的git status消息,请考虑以下图表:

remote: ... A -- B -- C ... (29 other commits)
             \
local:        M -- N -- O

换句话说,本地和远程分支都从A提交分支。从那时起,已经有31次提交到远程分支,而你自己做了3次提交。

答案 1 :(得分:0)

由于我的上游分支在.git中设置如下:

[remote "upstream"]
    url = https://github.com/Othersrepo.git
    pushurl = https://github.com/myRepo.git
    fetch = +refs/heads/*:refs/remotes/upstream/*
&#34;未来&#34;指的是本地和myRepo之间的差异,而不是Othersrepo,因此git状态并不表示我是否领先于我从中提取的Othersrepo。

运行git push,我就是最新的。 运行git fetch,然后我再次提交x。