git rm a.txt会删除仓库记录以及本地文件(慎用)
git rm --cached a.txt;git add . ;git commit -m只会删除仓库缓存
git mv a.txt A.txt;git add .;git commit通常用来改已提交的文件名
git commit --amend修正上一次提交(如果加-m会覆盖提交信息,不加则会继续使用上一次的信息)
git reset HEAD a.txt 撤销缓存区记录,保持内容不变
git checkout -- a.txt恢复为原始的文件
冲突产生原因:多个分支代码合并到同一个分支
git branch --merged查看已合并的分支情况
git branch --no-merged查看需要合并(即未合并)的分支情况
git branch -d xxx安全删除分支:未合并的分支不会生效,前提是切到目标分支比如master
git branch -D xxx强制删除分支
git stash;git stash list;git stash drop stash@{0};git stash list
git stash存储对应git stash apply (stash@{1})恢复(括号代表可选) git stash pop删除
git tag v1.0打版本标签
git archive master --prefix='dirname/' --forma=zip > dirname.zip生成zip包
merge到主分支前先切到自己的分支进行git rebase master,相当于把自己分支的根移到master最新的地方,出现冲突的话正好自己解决,然后再切到主分支进行merge或者提pr。
git branch -a显示包括远程的分支
git pull origin test:test把远程的test分支拉到本地的test分支(本地没有该分支的情况下使用)
git push origin --delete test删除远程的test分支