git常用指令和用法

创建git仓库

  命令:git init
  描述:创建一个可以容纳资源(物件)的容器(仓库)

往仓库旁边的暂存区中存放物件(资源)

  命令:git add [文件名]
  描述:将文件资源(物件)交给容器(仓库)管理员(暂存区)说,这个资源(物件)以后是要入容器(仓库)的;

将暂存区中的物件(资源)往仓库中存放

  命令:git commit -m [本次提交的注释]
  描述:告诉容器(仓库)资源(物件)之前的所有状态的改变进行一个快照(照相机照一张图片);并将文件资源(物件)交给容器(仓库)管理员(暂存区)说,这个资源(物件)以后是要入容器(仓库)的;

往仓库中存放物件(资源)

  命令:git diff "文件名"
  描述:当前修改的文件资源(物件)与容器(仓库)中的文件资源(物件)的的比较

查看容器(仓库)的提交历史记录

  命令:git log / git log --pretty=online git log --graph
  描述:查看git的提交历史记录

git回退到指定版本(时光穿梭机)

  命令:git reset --hard [commit_id]
  描述:查看git的提交历史记录
  备注:在git的世界中:HEAD 代表当前版本,HEAD^ 代表上一个版本 HEAD^^ 代表上上一个版本 HEAD~100 代表上100个版本;git reset HEAD "文件名" 可以把暂存区的修改撤销掉(unstage) 重新放回工作区

git查看命令历史

  命令:git reflog
  描述:查看历史命令,以便确认要回到未来的哪个版本

git撤回修改

  命令:git checkout [文件名]
  描述:把对应的文件在工作区的修改全部撤销
  备注:
场景一:对应的文件修改后还没有放到暂存区中;撤销修改会回到和版本库一模一样的状态
场景二:对应的文件修改后放到了暂存区中,又再次的进行了修改;撤销修改会回到添加到暂存区后的状态
总结:让文件回到最后一次git commit 或者 git add 时的状态

git删除文件

  命令:git rm [文件名]
  描述:从版本库中移除对应的文件,并将工作区的文件也删除掉

远程仓库

列出已经存在的远程库

  命令:git remote
  描述:列出已经存在的远程库

列出已经存在的远程库

  命令:git remote -v / git remote --verbose
  描述:列出已经存在的远程库的详细信息;在每一个名称后面列出其远程URL

添加远程仓库

  命令:git remote add [远程库名称] [URL]
  描述:远程库名称是对远程库的一个引用(即名称代表着URL所指向的远程库),

修改远程仓库

  命令:git remote rename [原名称] [目标名称]
  描述:即将原名称修改为目标名称

修改远程仓库

  命令:git remote rm [远程库名称]
  描述:移除指定名称的远程库

分支管理

创建并切换到对应的分支

  命令:git checkout -b [分支名]
  描述:创建分支并切换到创建的分支上

创建分支

  命令:git branch [分支名]
  描述:创建分支

远程库先开好分支然后拉取到本地

  命令:git checkout -b [分支名] [远程库]/[分支名]
  描述:将远程库中已经开好的分支拉取到本地

本地先开好分支然后推送到远程

  命令:git checkout -b [分支名] (创建分支) git push [远程库] [本地分支名]:[远程库分支名]
  描述:将远程库中已经开好的分支拉取到本地

切换分支

  命令:git checkout [分支名]
  描述:切换到对应的分支上

查看所有分支

  命令:git branch / git branch -r(查看远程所有分支)
  描述:查看所有的分支
备注:当前分支前面会标记一个 * 号

合并分支

  命令:git merge [分支名]
  描述:将对应分支的内容合并到master中
备注:
合并时如果出现"Fast forward"提示时;这种场景下Git只是将master分支指针直接右移; 如果不想使用"Fast forward"策略可以在merge时使用--no-ff参数更改为普通策略;eg: git merge --no-ff -m "merge时添加的描述信息" [分支名]
"Fast forward"策略合并后看不出曾经做过合并;普通策略可以

删除分支

  命令:git branch -d [分支名] / git branch -D [分支名](强制删除)
  描述:删除分支

stash(数据存储)

将当前工作现场储存起来
  命令:git stash
  描述:将当前工作现场储存起来,等以后恢复现场后继续工作

展示工作现场的储存列表

  命令:git stash list
  描述:查看当前工作区的储存列表

恢复工作现场

  命令:git stash apply / git stash apply stash@{0}(恢复指定的现场)
  描述:恢复stash内容
备注:恢复后stash内容不会被删除

删除工作现场

  命令:git stash drop
  描述:删除stash内容

恢复并删除工作现场

  命令:git stash pop
  描述:恢复并删除stash内容
备注:恢复后stash也会被删除

标签管理

git查看标签列表

  命令:git tag
  描述:查看标签列表

git打标签

  命令:git tag [name] / git tag -a [tagname] -m [标签描述信息] [commit_id]
  描述:git打标签

git给指定commit_id打标签

  命令:git tag [name] [commit_id]
  描述:git给指定的commit_id打标签

git将本地标签推送到远程库

  命令:git push [远程库] [tagname] / git push [远程库] --tags (将本地所有的标签推送到远程库)
  描述:将指定标签名推送到指定的远程库上

git查看标签信息

  命令:git show [tagname]
  描述:展示对应标签的信息

git删除标签

  命令:git tag -d [tagname]
  描述:删除指定名字的标签

git删除远程库上的标签

  命令:git push [远程库] :refs/tags/[tagname]
  描述:删除远程库上指定名字的标签

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

推荐阅读更多精彩内容

  • 1. 安装 Github 查看是否安装git: $ git config --global user.name "...
    Albert_Sun阅读 13,414评论 9 163
  • 声明:这篇文章来源于廖雪峰老师的官方网站,我仅仅是作为学习之用 Git简介 Git是什么? Git是目前世界上最先...
    横渡阅读 3,920评论 3 27
  • Git 是目前最流行的分布式版本控制系统之一。 版本控制指的是,记录每次版本变更的内容和时间等细节,保留各版本之间...
    神齐阅读 1,322评论 0 7
  • (预警:因为详细,所以行文有些长,新手边看边操作效果出乎你的预料) 一:Git是什么? Git是目前世界上最先进的...
    axiaochao阅读 1,901评论 1 8
  • 该篇文章为学习廖雪峰git教程的总结,具体可移步廖雪峰老师git教程网站 Git介绍 Git是分布式版本控制系统。...
    Pig_deng饲养员阅读 930评论 0 1