删除暂存区文件
1,git rm --cache 文件名 表示不再上传该文件,在服务器会找不到该文件
2,git reset HEAD 文件名 表示删除暂存区该文件,在服务器可以找到该文件,只是最新的操作不会上传
PS:当你添加文件到暂存区时,添加了不需要的文件到暂存区,删除暂存区文件的操作
git add test.py
git status 查看当前暂存区的文件
git reset HEAD test.py 删除暂存区中的test.py文件,等于在服务器上没有该文件了
git commit -m 'fix'
git push
2,合并时多次commit变成一次
某分支合并其他分支的最后成一个commit 1,git checkout dev 2,git merge my_dev --squash 3,git commit -m 'end' #在执行上一个命令后需要执行一次commit 4,git push #最后push上去后,在该分支上的commit,只会是最后一次commit
另外一种是本分支的多个提交合并 1,git log 2,git rebase -i HEAD~3 3,修改pick为s,并且保存修改 4,如果上面提示操作成功,那么执行 -git add . -git rebase --continue 如果操作过程中提示有冲突,那么先解决冲突,再执行下面代码, PS:如果提示有冲突但是没发现,那么也再执行下面的代码,就会看 见冲突部分 -git add . -git rebase --continue 5,执行完上面代码,成功了会弹出一个编辑框,保存退出即可 6,git log 查看是否合并成功
7,如果在其中想退出合并操作,那么执行
git rebase --abort
详细: https://segmentfault.com/a/1190000007748862