常用命令
初始化
git init
添加变更
git add
查看状态
git status
提交变更
git commit -m "message"
git commit -am "message"
git commit # 打开编辑器编辑日志,注释行不要删,不用管他,内容写在注释上面,保存提交成功
修改提交信息
git commit --amend
发布变更
git push
git push -u origin master
git push -u origin {branch-C}
从远程获取git仓库
git clone https://github.com/LiangXianSen/git-test.git
查看日志
git log
git log --pretty=short
git log -p file
git log --graph
压缩历史日志
git rebase -i HEAD~2
pick
fixup
比较变更
git diff
分支操作
查看分支
git branch
git branch -a
分支操作
git checkout {name}
git checkout - # 相对向上移动
git checkout ^ # 相对向上移动
git checkout ^^ # 相对向上移动两个
git checkout ~1 # 相对向上移动多个
git checkout -b {name} # 创建新分支
git checkout -b test-C origin/test-C # 获取远程分支到本地
合并分支
git checkout master
git merge --no-ff {name}
回溯历史版本
git reflog # 查看历史版本哈希值
git reset --hard
创建远仓库
git remote add origin git@github.com:{用户名}/{仓库名}.git
git clone字符事项
CR回车 LF换行Windows/Dos CRLF \r\n
Linux/Unix LF \n
MacOS CR \r
解决方法是:打开命令行,进行设置,如果你是在Windows下开发,建议设置autocrlf为true。
补充:如果你文件编码是UTF8并且包含中文文字,那还是把autocrlf设置为false,并且把所有文件转换为Linux编码(即LF\n),开启safecrlf检查。
一、AutoCRLF
提交时转换为LF,检出时转换为CRLF
git config --global core.autocrlf true
提交时转换为LF,检出时不转换
git config --global core.autocrlf input
提交检出均不转换
git config --global core.autocrlf false
二、SafeCRLF
拒绝提交包含混合换行符的文件
git config --global core.safecrlf true
允许提交包含混合换行符的文件
git config --global core.safecrlf false
提交包含混合换行符的文件时给出警告
git config --global core.safecrlf warn