Git常用指令

一、初始化配置:

1.1 指定客户端用户名和邮箱,为了标记是谁向远程库传送数据

$ git config --global user.name "Your Name"

$ git config --global user.email "email@example.com"

1.2查看用户名:$ git config user.name

1.3查看邮箱: $ git config user.email

1.4修改用户名:$ git config --global user.name "cyx"

1.5修改邮箱: $ git config --global user.email "328978553@qq.com"

1.6查看配置是否生效: $ git config --list

二、目录文件相关:

2.1创建目录: $ mkdir /d/softwear/Program (“mkdir” 是“make Directory”; “/d/softwear/”是要创建目录的位置 “Program” 是新创建的目录)

2.2定位到Program指定目录:  $ cd /d/软件/Program

2.3输出当前目录地址: $ pwd

2.4让之前创建的目录作为git可操作的仓库,此时再去刚才创建的program目录下会发现多了一个.git目录: $ git init

2.5查看当前仓库的隐藏目录,以及文件: $ ls –ah

2.6查看当前仓库的文件: $ ls

三、本地仓库关联远程库:

3.1关联Github远程库:$ git remote add origin git@server-name(服务器名即github用户名)/repo-name.git(远程仓库名.git)

如:$ git remote add origin git@zzwwqq/blog.git

3.2关联码云远程库:$ git remote add origin git@gitee.com:zwqzeq/Login_Register.git

四、操作远程仓库:

4.1显示远程库的详细信息: $git remote -v

4.2本地master分支内容推送到远程库的master分支: 第一次$ git push -u origin master 以后 直接$ git push origin master

4.3删除远程库: $ git remote rm origin (origin远程库默认名称,建议不改)

4.4从远程库克隆: $ git clone git@github.com:zwqzeq/gitskills.git

4.5将本地仓库指定分支合并到远程仓库指定分支: $ git push origin dev_branch : dev_branch

4.6强行让本地分支覆盖远程分支: $ git push 远程库名 远程库的分支名 -f

4.7将远程仓库的某个分支合并到当前本地分支: $ git pull 远程仓库名 远程仓库的分支名

五、文件保存和提交:

5.1将文件从工作区添加到暂存区: $ git add <file>

5.2将文件从暂存区提交到版本库: $ git commit -m “提交说明”

5.3随时查看当前仓库的状态: $ git status

5.4查看修改了具体修改了那些内容: $ git diff <file>

六、日志相关:

6.1查看提交历史(只有commit过的才能查到),以便确定要回退到哪个版本: $ git log

6.2如果嫌输出信息太多,看得眼花缭乱的,可以不显示详细信息: $ git log --pretty=oneline

6.3如果嫌输出信息太多,看得眼花缭乱的,可以不显示详细信息: $ git log --pretty=oneline --abbrev-commit

6.4查看命令历史(包括reset,commit,checkout),以便确定要回到未来的哪个版本(不包括从工作区添加(add)到暂存区的命令): $ git reflog

七、版本回退:

7.1退回到上一个版本: $ git reset --hard HEAD^ //针对版本库

7.2退回到上上个版本: $ git reset --hard HEAD^^

7.3退回到上100个版本: $ git reset --hard HEAD~100

7.4退回到指定版本: $ git reset --hard commit_ID

7.5只丢弃暂存区修改:  $ git reset HEAD <file> //针对暂存区,让暂存区恢复之前的状态

7.6只丢弃工作区的修改: $ git checkout --<file> //针对工作区,让工作区恢复之前的状态,即让工作区和暂存区一致,如果没有暂存区,则让工作区和版本库一致,如果该文件既没有添加到暂存区也没有提交到版本库,则工作区中该文件的修改不能被丢弃

八、分支相关:

8.1查看分支: $ git branch

8.2创建分支: $ git branch <name>

8.3切换分支: $ git checkout <name>(注意与[恢复文件](file:///D:/QQFile/1107717335/FileRecv/Git%E8%AF%AD%E6%B3%95.doc#_2.%E5%B7%A5%E4%BD%9C%E5%8C%BA%E6%96%87%E4%BB%B6%E8%A2%AB%E5%88%A0%E9%99%A4)的区别,此处checkout后面没有“--”)

8.4创建+切换分支: $ git checkout -b <name>

8.5合并某分支到当前分支: $ git merge <name>

8.6删除分支: $ git branch -d <name>

8.7重命名分支: $ git branch -m old_branch new_branch

8.8看到分支合并情况: $ git log --graph --pretty=oneline --abbrev-commit

8.9可以禁用快速合并dev方式: $ git merge --no-ff -m "merge with no-ff" dev

8.10删除一般的分支: $ git branch -d <name>

8.11丢弃一个没有被合并过的分支,可以通过: $ git branch -D <name> //强行删除

九、标签相关:

9.1默认标签是打在当前分支最新提交的commit上: $ git tag <name>

9.2指定一个commit id,给其打上标签,即以后标签可代表commit id: $ git tag <name> commit_id

9.3查看所有标签名: $ git tag

9.4查看标签信息: $ git show <tagname>

9.5指定标签信息: $ git tag -a <tagname> -m "blablabla..." commit_ID

9.6删除本地标签: $ git tag -d v0.1

9.7推送某个标签到远程(origin 是默认的远程库名,也可换成自定义的名字): $ git push origin <tagname>

9.8推送所有标签到远程(origin 是默认的远程库名,也可换成自定义的名字): $ git push origin --tags

9.9删除远程标签:如果标签已经推送到远程,要删除远程标签就麻烦一点,先从本地删除,然后,从远程删除:

$ git tag -d v0.9

$ git push origin :refs/tags/v0.9

十、临时保存工作现场:

10.1前工作现场“储藏(或称隐藏)”起来,等以后恢复现场后继续工作: $ git stash

10.2查看某个分支上隐藏工作区: $ git stash list

10.3恢复工作现场:两种方式:

方式一:用$ git stash apply恢复,但是恢复后,stash内容并不删除,你需要用$ git stash drop来删除;

方式二:用$ git stash pop,恢复的同时把stash内容也删了

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

推荐阅读更多精彩内容

  • 下面是我整理的常用 Git 命令清单。几个专用名词的译名如下。 Workspace:工作区Index / Stag...
    你为什么无理取闹阅读 265评论 0 0
  • 版本库操作 git init # 把当前的目录变成可以管理的git仓库,生成隐藏.git文件(但...
    琢磨先生lf阅读 420评论 0 0
  • git常用命令 GIT常用命令备忘:http://stormzhang.com/git/2014/01/27/gi...
    新篇章阅读 8,471评论 1 26
  • 一、git的一些常用指令 查看、添加、提交、删除、找回,重置修改文件 git help # 显示command...
    李先生Mr_Li阅读 264评论 0 0
  • 由于git的使用通常伴随着linux的常用指令,因此下面记得也有linux常用的操作,如果学习git确实应该也学习...
    fwfaef阅读 248评论 0 0