git – 你的分支在1提交之前是“origin / master”
我是git的新手,我正在git上工作。
我在git中添加了一些文件:
git add <file1> git add <file2>
那么我想推动审查,但我错了
git commit
所以我改变的文件不去评论。
现在,如果我input命令:
git status
它说
# On branch master # Your branch is ahead of 'origin/master' by 1 commit. # nothing to commit (working directory clean)
我想恢复提交,我想推动这些文件进行审查,而不是提交。 任何人都可以让我知道我该怎么做?
你不能推动任何尚未提交的东西。 操作顺序是:
- 做你的改变。
-
git add
– 这个阶段你的更改提交 -
git commit
– 这会在本地提交您的阶段性更改 -
git push
– 这将您提交的更改推送到远程
如果你没有提交,没有推动。 如果你没有添加提交,没有提交。 如果你添加没有提交,根本就没有任何事情发生,git只是记得你添加的改变应该被考虑用于下面的提交。
您看到的消息(您的分支在1提交前面)意味着您的本地存储库有一个尚未推送的提交。
换句话说, add
和commit
是本地操作, push
, pull
和fetch
是与远程交互的操作。
由于在你工作的地方似乎有一个官方的源代码pipe理工作stream程,所以你应该在内部询问如何处理。
git reset HEAD^ --soft
(保存您的更改,回到上次提交)
git reset HEAD^ --hard
(放弃更改,返回上次提交)
如果您只想丢弃更改并恢复到最后一次提交(您想要共享的那个):
git reset --hard HEAD~
你可能想检查一下,确保你想要这个( git log
),因为你将失去所有的改变。
一个更安全的select是运行
git reset --soft HEAD~ # reset to the last commit git stash # stash all the changes in the working tree git push # push changes git stash pop # get your changes back
我解决了这个只是运行一个简单的:
git pull
而已。 现在显示:
# On branch master nothing to commit, working directory clean
git reset HEAD <file1> <file2> ...
从下一次提交中删除指定的文件
git重置HEAD ^
那么修改后的文件应该显示出来。
您可以将修改的文件移动到一个新的分支
使用,git checkout -b newbranch git checkout commit -m“文件修改”git push origin newbranch
git checkout master
那么你应该在一个干净的分支,你的变化应该存储在newbranch。 您稍后可以将此更改合并到主分支中