删除(1)
1.git rm -r --cached .setting #--cached不会把本地的.setting文件夹删除
2.git commit -m 'delete .setting dir'
3.git push -u origin master
删除(2):当删除的文件比较多时,可以使用配置gitingore文件。参考
直接修改.gitignore文件,将不需要的文件过滤掉,然后执行命令
git rm -r --cached .
git add .
git commit
git push -u origin master
合并
1.git log 查看提交记录
2.git rebase
想要合并1-3条,有两个方法
a.从HEAD版本开始往过去数3个版本
git rebase -i HEAD~3
b.指名要合并的版本之前的版本号
git rebase -i 3a4226b
请注意3a4226b这个版本是不参与合并的,可以把它当做一个坐标
3.选取要合并的提交
a.执行了rebase命令之后,会弹出一个窗口,头几行如下:
pick 3ca6ec3 '注释**********'
pick 1b40566 '注释*********'
pick 53f244a '注释**********'
b.将pick改为squash或者s,之后保存并关闭文本编辑窗口即可。改完之后文本内容如下:
pick 3ca6ec3 '注释**********'
s 1b40566 '注释*********'
s 53f244a '注释**********'
c.然后保存退出,Git会压缩提交历史,如果有冲突,需要修改,修改的时候要注意,保留最新的历史,不然我们的修改就丢弃了。修改以后要记得敲下面的命令:
git add .
git rebase --continue
如果你想放弃这次压缩的话,执行以下命令:
git rebase --abort
d.如果没有冲突,或者冲突已经解决,则会出现如下的编辑窗口:
# This is a combination of 4 commits.
#The first commit’s message is:
注释......
# The 2nd commit’s message is:
注释......
# The 3rd commit’s message is:
注释......
# Please enter the commit message for your changes. Lines starting # with ‘#’ will be ignored, and an empty message aborts the commit.
e.输入wq保存并推出, 再次输入git log查看 commit 历史信息,你会发现这两个 commit 已经合并了