git的常用命令总结

一、本地仓库

1、git init

创建git空仓库

2、git add <file>

添加文件到暂存区

3、git commit -m "提交的描述"

提交暂存区的内容到工作区

4、git log    git log --pretty=oneline (格式化查看log日志)   

查看提交的日志

5、git reset --hard HEAD^      git reset --hard 提交的id

回退到上一个版本(工作区和版本库一起修改)

6、git reflog

如果回退到上个版本后悔了,可以继续使用这个reflog查看之前的版本在选择回退到哪个版本

7、git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后,执行git commit就可以一次性把暂存区的所有修改提交到分支

8、git diff HEAD -- <file>

查看工作区和版本库里面最新版本的区别

9、git checkout -- <file>

两种情况:

①:在工作区修改的内容还没有add到暂存区,执行后会回到与版本库中的一模一样的状态

②:已经把工作区的内容add到暂存区后,再次修改工作区的内容,执行后会保持已经添加到暂存区的状态

10、git reset HEAD <file>

可以把暂存区的修改撤销掉(unstage),重新放回工作区。

11、git rm <file>

删除工作区和暂缓区的文件

二、远程仓库

1、git remote add origin 地址

关联远程仓库

2、git push -u origin master

第一次把本地内容推送到远程仓库

3、git push origin maste

把本地master分支的最新修改推送至远程仓库(github)

4、 git clone 地址

如果想拷贝github上的项目用上面的命令(克隆下来以后只能看到master分支)

5、git remote

查看远程仓库信息(当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了,并且,远程仓库的默认名称是origin)

6、git remote -v

显示更详细的信息

7、git push origin <分支名>

这是分支的推送,可以把本地的分支推送到远程仓库中的分支

8、git checkout -b dev origin/dev

当你clone了一个项目之后是查看不到除了master以外的分支,所以需要用以上代码创建并切换分支

9、git branch --set-upstream-to=origin/dev dev

关联本地分支与远程分支,这样就能采取git pull命令拉取远程仓库的最新代码(可能会有冲突)

10、git pull(git pull origin dev)

拉取分支代码(在拉取之前可以用git diff进行查看,避免冲突)

三、分支管理

1、git checkout -b <分支名>

git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:

$ git branch <分支名>

$ git checkout <分支名>

2、git branch

查看当前的分支

3、git checkout master

切换分支,工作区的内容也跟着一起切换。

4、git merge <分支名>

合并分支

5、git branch -d <分支名>

合并之后删除分支

6、git log --graph --pretty=oneline --abbrev-commit

分支有冲突时查看分支情况

7、git merge --no-ff -m "merge with no-ff" dev

分支管理策略:因为本次合并要创建一个新的commit,所以加上-m参数,把commit描述写进去。

合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。

8、git stash

保存当前分支的工作现场,可以去修改着急的bug分支

9、git stash list

查看有多少个stash

10、git stash pop

恢复工作现场同时把stash删除掉 (git stash apply 恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;)

11、git stash apply stash@{0}

可以有多次stash,恢复指定的stash

12、git branch -D <分支名>

开发新功能时需要新建个feature分支,强行删除分支上的内容。

三、标签

1、git tag <tag>

默认标签是打在最新提交的commit上的

2、git tag

查看所有标签

3、git tag <tag> commitid

指定commitid打标签

4、git show <tag>

显示对应标签上提交的信息

5、$ git tag -a <tag> -m "说明" commitid

创建带有说明的标签,用-a指定标签名,-m指定说明文字

标签总是和某个commit挂钩。如果这个commit既出现在master分支,又出现在dev分支,那么在这两个分支上都可以看到这个标签

6、git tag -d <tag>

删除标签

7、git push origin <tag>

推送到远程标签

8、git push origin --tags

一次性推送全部尚未推送到远程的本地标签

9、git tag -d <tagname>

删除远程标签先删除一个本地标签,然后在删除远程标签

10、git push origin :refs/tags/<tagname>

删除远程标签

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,869评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,716评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,223评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,047评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,089评论 6 395
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,839评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,516评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,410评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,920评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,052评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,179评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,868评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,522评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,070评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,186评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,487评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,162评论 2 356

推荐阅读更多精彩内容

  • 安装Git Git的下载地址:Git官网下载地址 Git本地仓库和命令 配置用户 下载完Git后,右键会有一个Gi...
    TokyoZ阅读 4,507评论 1 7
  • Add & Commit git init 初始化一个 Git 仓库(repository),即把当前所在目录变成...
    冬絮阅读 4,842评论 0 9
  • 常用Git命令总结 git config --global user.name "你的名字" 让你全部的Git仓库...
    繁星追逐阅读 255评论 0 0
  • 简介   git有四个工作区域,分别是:工作目录(Workspace)、暂存区(Index/Stage)、本地仓库...
    gybguohao阅读 21,052评论 4 21
  • 近几天一直在看知否知否,本来对它充满期待,但是小说搬到大荧幕才发现,原来漏洞如此之多。 记得刚刚看知否的小说时,感...
    两个胖女孩阅读 375评论 0 3