git 命令简洁手册

1.从当前目录初始化

git init

2.对文件进行跟踪  将已跟踪的文件放到暂缓区 把有冲突的文件标记为已解决状态

git add <file>

3.从现有仓库克隆

git clone 地址(支持git协议,http协议,SSH协议)

4.检查当前文件状态

git status

5.查看已暂存和未暂存的更新

git diff  //比较工作目录中当前文件和暂存区域快照之间的差异

git diff --cached  // 比较已经暂存的文件和上次提交时的快照之间的差异

6.提交更新

git commit  // 启动文件编辑器,可以输入本次提交说明
git commit -m "提交说明"

//-----------------以上提交的是放在暂存区域的快照-------------

git commit -a   //自动把所有已经跟踪过的文件暂存起来并提交

7.删除文件

//已经手动删除目录中的文件 
git rm 文件名    //该文件不会再纳入文件版本管理

//删除之前修改过,并且已经放到暂存区域
git rm -f 文件名   // 强制删除

//仅仅是从跟踪清单中删除,当时仍保留在工作目录
git rm --cached 文件名

8.移动文件

git mv file_from file_to

等同于:

mv  README.txt README
git rm README.txt
git add README

9.查看提交历史

git log

git log -p       //显示每次提交的内容差异
git log -2       // 仅显示最近2次更新
git log --stat   //仅显示摘要的增改行数统计

---------------------   --pretty选项自定义显示 --------------------------

git log
--pretty=oneline //每个提交一行显示 oneline //每个提交一行显示 short //仅显示SHA-1,作者,提交注释 full //仅显示SHA-1,作者,提交者,提交注释 fuller //SHA-1,作者,作者日期,提交者,提交者日期,提交注释 --------------------- --pretty=format 占位符显示 ---------------------- 例: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 提交说明 */ //使用--graph显示ASCII字符串表示的简单图形 git log --pretty=format : "%h %s" --graph //其他选项 -p 按补丁格式显示每个更新之间的差异。 --stat 显示每次更新的文件修改统计信息。 --shortstat 只显示 --stat 中最后的行数修改添加移除统计。 --name-only 仅在提交信息后显示已修改的文件清单。 --name-status 显示新增、修改、删除的文件清单。 --abbrev-commit 仅显示 SHA-1 的前几个字符,而非所有的 40 个字符。 --relative-date 使用较短的相对时间显示(比如,“2 weeks ago”)。 --graph 显示 ASCII 图形表示的分支合并历史。 --pretty 使用其他格式显示历史提交信息。可用的选项包括 oneline,short,full,fuller 和 format(后跟指 定格式) ---------------------限制输出长度--------------------------- git log --since=2.weeks //查看所有最近两周内的提交 选项 说明 -(n) 仅显示最近的 n 条提交 --since, --after 仅显示指定时间之后的提交。 --until, --before 仅显示指定时间之前的提交。 --author 仅显示指定作者相关的提交。
--committer 仅显示指定提交者相关的提交。 /*例如 : Git 仓库中,2008 年 10 月期间,UFreedom 提交的但未合并的测试脚本(位于项目的 t/ 目录下的文件)*/ git log --pretty="%h:%s" --author=UFreedom --since="2008-10-01" --before="2008-11-01" --no-merges -- t/

10.使用图形化工具查阅提交历史

gtik

11.撤销操作

//------------------------修改最后一次修改---------------------

git commit --amend       //此命令将使用当前暂存区域快照提交

//-----------------------撤销已暂存的文件----------------------

git reset HEAD <file>

//----------------------取消对文件的修改-----------------------

git checkout -- <file>

12.远程仓库

// ----------------查看当前的远程仓库-----------------------

git  remote

//显示仓库地址 --verbose
git remote --verbose

//----------------添加远程仓库-----------------------------

git remote add <名称>  地址


//----------------从远程仓库抓取数据到本地----------------
git fetch [remote-name]     //fetch 只是将远端数据拉到本地仓库,并不自动合并到当前工作分支

//----------------推送数据到远程仓库--------------------
git push [remote-name] [branch-name]

git push origin master


//------------------查看远程仓库的信息------------------
git remote show [remote-name]


//-------------------重命名远程仓库---------------------
git remote  rename <现在的名字> <新名字>

//-------------------删除远程仓库------------------
git remote rm [remote-name]

 

  

原文地址:https://www.cnblogs.com/ufreedom/p/4283584.html