不能推也不能拉。(Git/SourceTree)

不能推也不能拉。(Git/SourceTree),git,github,branch,push,pull,Git,Github,Branch,Push,Pull,Git非常新,我目前正在使用SourceTree 我发现自己处于一个非常有趣的境地,似乎无法摆脱。我似乎无法拉动或推动代码。我似乎有两个承诺在前面,两个承诺在后面 我只是想了解最新情况,这样我就可以下载所有最新的代码,并继续工作。我不知道如何进行 我不想因为我的承诺而失去工作,但如果这真的很重要,我会的,因为它们都是次要的 要使分支机构更新并与我的本地分支机构同步,最简单、最合适的方法是什么?如果您没有未提交的更改 先拉。如果存在任何合并冲突,SourceTree将要求您解决。然后推动您的更改

Git非常新,我目前正在使用SourceTree

我发现自己处于一个非常有趣的境地,似乎无法摆脱。我似乎无法拉动或推动代码。我似乎有两个承诺在前面,两个承诺在后面

我只是想了解最新情况,这样我就可以下载所有最新的代码,并继续工作。我不知道如何进行

我不想因为我的承诺而失去工作,但如果这真的很重要,我会的,因为它们都是次要的

要使分支机构更新并与我的本地分支机构同步,最简单、最合适的方法是什么?

如果您没有未提交的更改

先拉。如果存在任何合并冲突,SourceTree将要求您解决。然后推动您的更改

如果您有未提交的更改

Git有一个名为stashing的功能来保存未完成的更改。在SourceTree中,执行以下步骤:

选择您的存储库,单击主菜单中的“存储库”,然后单击“隐藏更改” 为您的存储命名为“未提交”功能,并确保未选中该复选框 现在获取所有最新的更改 在文件左侧的树菜单中,您可以找到一个类别隐藏,展开它并搜索您创建的隐藏 在中单击鼠标右键,然后选择“应用隐藏” 解决合并冲突(如果有)。现在,如果没有未提交的更改,您应该能够像以前一样提交和推送。

先拉。如果存在任何合并冲突,SourceTree将要求您解决。然后推动您的更改

如果您有未提交的更改

Git有一个名为stashing的功能来保存未完成的更改。在SourceTree中,执行以下步骤:

选择您的存储库,单击主菜单中的“存储库”,然后单击“隐藏更改” 为您的存储命名为“未提交”功能,并确保未选中该复选框 现在获取所有最新的更改 在文件左侧的树菜单中,您可以找到一个类别隐藏,展开它并搜索您创建的隐藏 在中单击鼠标右键,然后选择“应用隐藏”
解决合并冲突(如果有)。现在你应该可以像以前一样提交和推送了。

人们可能已经对你克隆的项目进行了更新,这解释了背后的提交,你也在克隆后进行了提交,但还没有推送,这也解释了前面的提交。你要做的是:

重置提交,但使用git reset-soft HEAD保留更改^

使用git stash隐藏更改

然后呢,

使用git pull origin branchName在您的头部分支上获取人们更新的内容

如果你没有隐藏,你现在可能会遇到冲突,因为系统不够聪明,不知道什么是重点:你改变了什么,或者其他分支的人改变了什么。这可能不是那么容易解决的问题,所以我强烈建议您在执行“拉”之前先隐藏更改

现在,假设你在你的分支中引入了新事物

通过执行:git stash apply获得更新

现在您尚未提交,但您的更改正在等待提交

因此,分别提交并使用:git push origin branchName


人们可能已经对您克隆的项目进行了更新,这解释了背后的提交,而您在克隆之后也进行了提交,但尚未推送,这也解释了前面的提交。你要做的是:

重置提交,但使用git reset-soft HEAD保留更改^

使用git stash隐藏更改

然后呢,

使用git pull origin branchName在您的头部分支上获取人们更新的内容

如果你没有隐藏,你现在可能会遇到冲突,因为系统不够聪明,不知道什么是重点:你改变了什么,或者其他分支的人改变了什么。这可能不是那么容易解决的问题,所以我强烈建议您在执行“拉”之前先隐藏更改

现在,假设你在你的分支中引入了新事物

通过执行:git stash apply获得更新

现在您尚未提交,但您的更改正在等待提交

因此,分别提交并使用:git push origin branchName