git命令简洁版

2016-11-09  本文已影响61人  夏广成

一:添加提交

将未被跟踪的文件添加到暂存区,可以添加多个文件 用空格隔开

git add filename 

将暂存区里的内容提交到本地仓库

git commit -m "description" 

将暂存区以及被修改(尚未提交到暂存区)的内容都提交到本地仓库,但是不会提交未被跟踪的文件

git commit -a -m "description" 

如果没有添加-m 参数,那么会弹出vi编辑,在vi编辑中输入信息,如果输入信息为空,则会丢弃此次提交

git commit

这个引号不能省略!!!

git add '*.txt' 

删除未跟踪的文件
(1):查看可能会删除的文件

git clean -n

(2):删除未跟踪文件-f ,删除未跟踪文件以及文件夹-df

git clean -df

二:git日志

将提交信息也显示在log之后

git log --pretty=short
--pertty=oneline //精简日志

显示指定文件的提交信息

git log filename 

查看指定文件上次提交的变化

git log -p filename 

以图表形式查看合并提交树

git log --graph

三:git diff的特殊说明

git diff 分为两种情况:
1:当暂存区中没有文件时,比较当前工作区中的文件与上次提交到版本库中的文件
2:当暂存区有文件时,比较当前工作区中的文件与暂存区中的文件

下面的命令比较的是(工作区和暂存区)中的文件与版本库中的文件的区别

git diff HEAD 

git diff --cached 或者 git diff --staged 比较暂存区与版本库中的区别

四:切换分支

查看当前分支

git branch 

创建develop分支

git branch develop  

切换到develop分支

git checkout develop

创建并切换到develop分支

git checkout -b develop

将master分支合并到develop上

git merge --no-ff master

删除分支

git branch -d dev

命令行颜色设置为自动

git config --global color.ui auto  

五:暂存回退

如果文件没有添加到暂存区,使用该命令可以撤销当前版本所有修改,记住-- 和filename之间有空格

git checkout -- fileName

如果文件已经添加到暂存区了,那么需要先从暂存区回退。

git reset HEAD fileName 

从暂存区回退后,再次撤销修改。

git checkout -- fileName

六:远程仓库

将仓库repositoryName 设置为本地仓库的远程仓库,并且标志符设置为origin 。

git remote add origin git@github.com:username/repositoryName.git

当我们初始化远程仓库的时候,最好不要勾选initialize this repository with... .一旦勾选了,就失去了远程仓库和本地仓库的完整性

第一次推送某个分支的时候,这里是推送master分支,通过-u参数设置后,当我们之后要在这个分支上pull代码的时候,就可以直接pull了。

git push -u origin master  

可以查看本地所有分支,以及远程所有分支

git branch -a 

默认下载的是master分支

git clone git@github.com:xiaguangcheng/kaws.git 

从远端拉取xia_4.0分支代码,-b 后面的参数可以为其他名称,但是最后和远程同名

git checkout -b xia_4.0 origin/xia_4.0  

推送当前分支到远程

git push

拉取最新的xia_4.0代码

git pull origin xia_4.0 

“?”也就是shift+"/"这两个组合键,可以打开github网站的键盘快捷键页面

六:状态切换

引用自Git常用的撤销操作

七:子模块

如果在git中使用了子模块,那么我们通过git clone 了仓库中的代码,子模块就只有文件夹而没有内容。这个时候我们就需要

git submodule init
git submodule update

但是在执行update的过程中,经常会出现零进度,或者出现

fatal: Needed a single revision
Unable to find current revision in submodule path 'ffmpeg'

这个时候我们可以

rm -rf ffmpeg   // ffmpeg子模块
rm -rf x264  //x264子模块
image.png
上一篇 下一篇

猜你喜欢

热点阅读