1.git log中文乱码:
git config --global i18n.commitencoding utf-8
git config --global i18n.logoutputencoding utf-8
export LESSCHARSET=utf-8
2.gitk, git gui中文乱码:
修改git的.gitconfig
[gui]
encoding = utf-8
[i18n]
commitencoding = utf-8
3.git 版本回退:
git log (--pretty=oneline -5)
git reset --hard log
git reflog log
git reset --hard log
4.git 删除分支:
git branch -d(|-delete) branchName
删除本地的远程分支:
git branch -r -D origin/BranchName
远程删除git服务器上的分支:
git push origin -d BranchName
5.其他:
显示分支信息
git show (分支编码)
查询文件中匹配字符串
git grep ""
移动,删除
mv rm
6.批量删除分支:
git branch| grep "" |xargs git branch -D
7.git commit合并:
git log
查看id
git rebase -i start_id end_id
(要合并的commit,前开后闭)
进入vi界面,把pick(倒序了,第一个不改)改为squash,保存退出
修改commit描述,保存退出
如果不是修改到最后(,可能有冲突,解决冲突合并,git rebase),创建临时分支,git rebase临时分支
合并远程的commit,需要强制覆盖
git push --force(-f)
8.git提交到远程:
git push
(已关联)
git push origin/branch_name
(远程branch存在)
git push origin branch_name:branch_name
(远程branch不存在)
git push --set-upstream origin newbranch
(关联远程分支)
注意:本文归作者所有,未经作者允许,不得转载