git常见问题汇总:

1,已经commit的文件需要修改 /删除,应该怎么处理?
2,自己建的分支“branch1”显示“rebasing branch1”,这是什么情况?
3,由于内容修改/优化,在同一个分支里多次提交代码,如何合并成一次commit,并将之前多次提交废弃?
4,Vim编辑-保存并退出操作
5,当提示“error: cannot rebase: You have unstated changes. error: Please commit or stash them.”错误情况,应该怎么处理?


1, 已经commit的文件需要修改 /删除,应该怎么处理?

commit and push了多个文件后,发现某个文件上传错误或者需要修改时。有一下两种处理方法:

方法1: 删除文件:

git rm <file_to _remove> 或者 直接在文件夹中删除。(切记再次提交时,需要选上要删除的文件,这样删除功能才能实现)

方法2: 修改文件:

正常修改文件内容,重新commit即可

2, 自己建的分支“branch1”显示“rebasing branch1”,这是什么情况?

显示“rebasing branch1”表示你的分支正在合并多个commit内容,如果你要停止该操作,执行下面代码即可:

git rebase --abort

3, 由于内容修改/优化,在同一个分支里多次提交代码,如何合并成一次commit,并将之前多次提交废弃?

  • 第一步:git rebase -i HEAD~4(假设你需要合并最近4次commit);
  • 第二步:从第2次(显示的第2个)commit开始,修改pick为squash(第一次修改),然后退出vim编辑并保存,再次修改commit(第二次修改,删除squash的那些commit所提示的内容,只保留第一次的commit信息),最后保存退出;
  • 第三步:git push --force(提交这次的更改)。

4, Vim编辑-保存并退出操作

  • 第一步:修改完内容后,按Esc键,确保处于命令模式;
  • 第二步:同时按shift键和:键
  • 第三步:输入wq,表示保存并退出,然后按Enter键。
    (输入q!,表示不保存,且强制退出)

5, 当提示“error: cannot rebase: You have unstated changes. error: Please commit or stash them.”错误情况,应该怎么处理?

在这里插入图片描述

该错误提示表示,你在进行rebase操作时,有更改的文件没有在本次提交中,需要全部提交或者暂存。

5.1 提交更改:

git add . (将该目录下的所有更添加到暂存区。git add file1.txt file2.txt 将指定文件添加到暂存区)
git commit -m 'your commit message'  (将暂存区所有文件提交到本地版本库)

5.2 暂存更改:

 git stash (将所有更改为提交的代码暂存)
(在rebase完成之后,需要释放个更改:git stash pop)

(“Your dreams truly matter; pursue them with relentless passion every day. -你的梦想至关重要,每天都要以不懈热情去追求。”FIGHTING. . . .)

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐