配置信息命令:
--列出所有 Git 能找到的配置
$ git config --list
user.name=John Doe
user.email=johndoe@example.com
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto
...
--配置全局用户信息,在提交时会自动写入
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
--检查某一项配置
$ git config user.name
John Doe
命令帮助
--列出所有命令
$ git help --all
--获取其中一个命令的帮助文档
$ git help <verb>
$ git help merge
$ git help log
git使用
--获取git仓库
$ git init
$ git clone https://github.com/GUOYUANLIDEDABAICAI/git_command.git local_name
--git版本控制文件目录下的文件状态:未跟踪文件、已跟踪文件(未修改、已修改、已移入暂存区)
--跟踪新文件
$ git add README
--查看文件状态
$ git status -s
$ git diff --cached 显示暂存区数据改动
$ git diff 看暂存前后的变化
--提交
$ git commit -m "Story 182: Fix benchmarks for speed"
--推送
$ git push
git历史记录
$ git log 显示所有提交历史
$ git log -2 显示最近两次提交
$ git log --stat 查看每次提交新增删除的简略信息
$ git log --pretty=format:"%h - %an, %ar : %s" 格式化显示历史提交信息
%H 提交对象(commit)的完整哈希字串
%h 提交对象的简短哈希字串
%T 树对象(tree)的完整哈希字串
%t 树对象的简短哈希字串
%P 父对象(parent)的完整哈希字串
%p 父对象的简短哈希字串
%an 作者(author)的名字
%ae 作者的电子邮件地址
%ad 作者修订日期(可以用 --date= 选项定制格式)
%ar 作者修订日期,按多久以前的方式显示
%cn 提交者(committer)的名字
%ce 提交者的电子邮件地址
%cd 提交日期
%cr 提交日期,按多久以前的方式显示
%s 提交说明
$ git log --since=2.weeks 显示最近两周的提交
-(n) 仅显示最近的 n 条提交
--since, --after 仅显示指定时间之后的提交。
--until, --before 仅显示指定时间之前的提交。
--author 仅显示指定作者相关的提交。
--committer 仅显示指定提交者相关的提交。
--grep 仅显示含指定关键字的提交
-S 仅显示添加或移除了某个关键字的提交
git撤销操作
$ git commit --amend
这个命令会将暂存区中的文件提交。 如果自上次提交以来你还未做任何修改(例如,在上次提交后马上执行了此命令),那么快照会保持不变,而你所修改的只是提交信息。
$ git reset HEAD CONTRIBUTING.md 取消暂存 CONTRIBUTING.md 文件
$ git checkout -- CONTRIBUTING.md 撤消对文件的修改
远程仓库的使用
$ git remote -v 显示需要读写远程仓库使用的 Git 保存的简写与其对应的 URL
$ git remote add hpf https://github.com/paulboone/ticgit
添加一个新的远程 Git 仓库,同时指定一个你可以轻松引用的简写
$ git fetch hpf 拉取 hpf的仓库中有但你没有的信息
git fetch命令会将数据拉取到你的本地仓库,但并不会自动合并或修改你当前的工作.当准备好时你必须手动将其合并入你的工作。
git pull命令会自动的抓取然后合并远程分支到当前分支。
$ git push origin master 推送到远程仓库
$ git remote show origin 查看某一个远程仓库的更多信息
$ git remote rename hpf paul 重命名
$ git remote rm hpf 移除远程仓库
打标签
$ git tag 列出标签
$ git tag -a v1.4 -m 'my version 1.4' 创建一个附注标签
$ git show v1.4 查看标签信息与对应的提交信息
$ git tag v1.4-lw 创建轻量标签
后期打标签
$ git log --pretty=oneline
$ git tag -a v1.2 9fceb02(也即是版本号)
$ git push origin --tags 共享标签
$ git tag -d v1.4-lw 删除标签
$ git checkout 2.0.0 检出标签 会使你的仓库处于“分离头指针(detacthed HEAD)”状态,此时修改提交无法访问
$ git checkout -b version2 v2.0.0 需要检出标签进行修改时通常是创建新的分支
git别名
$ git config --global alias.co checkout
$ git config --global alias.br branch
$ git config --global alias.ci commit
$ git config --global alias.st status