繁体   English   中英

git pull替换现有代码

[英]git pull replaces existing code

在Git中提交文件后,我发出了一个pull请求,但它停止了我的某些代码功能。 在提交文件之前,我想转到上一个阶段,此拉取请求之前的状态。

我发现git stash是上git stash的一种选择。 但是有很多选择,例如

git --rebase
git stash
git stash pop

我尝试过的其他命令包括:

git status
git commit file1 file2 file3 -m "message"
git commit -i file1 file2 file3 "message"
git pull
git checkout 

拉动前我需要使用哪些命令进入舞台?

我觉得你混合拉力拉请求 拉取请求是GitHub对存储库所有者的请求,以获取您的一些提交并将这些提交应用于他的存储库。 另一方面, git pull是使用关联的远程存储库中的新更改更新本地存储库的过程。

警告:首先 备份您的本地存储库。

要从可能的问题中恢复,可以尝试:

  • git reset --hard在合并过程中进行git reset --hard重置。 这将删除所有暂存的( git add ed)更改和所有本地更改。
  • git rebase --abort重设正在进行的rebase程序,以防您开始发行git rebasegit pull --rebase

建议您清理完存储库后,执行

git fetch

以确保您是最新的远程存储库。 然后,您可以使用gitk --all可视化检查所有分支的历史记录。 我想,您将看到origin/master分支位于本地提交之前。 为了推动您的更改,您将必须合并或更好地进行基准调整。 为此,请检查您的本地更改

git checkout master

(将master替换为您的本地分支),然后发出

git rebase origin/master

(将master替换为目标远程分支)。 如果您遇到合并冲突,则必须解决它,然后git add更改的文件,然后继续使用

git rebase --continue

现在,您可以使用

git push origin master:master

(用本地分支替换master节点,用远程分支替换第二个master节点)

您必须事先使用git stash 如果没有,则可以通过运行git log -g来猜测先前的状态。

在结果中,找到带有“消息”的提交。 其中之一就是您要寻找的东西。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM