git 基本操作命令

参考学习于廖雪峰的git教程--https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000


git config user.name 使用者name

git config user.email 使用者email

1. git init  初始化git仓库

2. git status 查看仓库当前的状态

3. git diff

    .暂存区有文件的时候,查看工作区和暂存区的差别

    .暂存区没有文件的时候,查看工作区和上次提交到版本库中的文件的差别

    .git diff HEAD --readme.txt 查看版本库中readme.txt文件和工作区中的readme.txt文件的区别

    HEAD指向版本库中的当前版本

4. git add  文件修改提交到暂存区

5. git commit 提交更改,即把暂存区的内容提交到当前分支(参数 -m 后面跟备注)

6. git log 查看历史提交记录,后面有很多参数可用,比如 --pretty=oneline(每个提交信息单行显示)

7. git reset --hard HEAD^ (回退到上一个版本,HEAD^^回退到上上个版本,HEAD~100回退到前100个版本)

  git reset --hard 1e650aa (1e650aa是提交版本的哈希,回到哈希值为1e650aa的版本)

  git reflog  记录每次操作的命令,可用获得各个版本的哈希值

8. git checkout --readme.txt 把工作区的修改全被撤销,即,让这个文件回到最近一次git commit 或者 git add 后 的状态

9. git reset HEAD readme.txt 把暂存区的修改全部撤销掉,重新放回工作区

10. 远程仓库 

    创建ssh key $ ssh-keygen -t ras -C "youremail@example.com",使用默认值就可以了

    在用户目录中找到.ssh目录 id_rsa.pub是公钥

    在github中的SSH key中 在文本框里粘贴id_rsa.pub的内容

    本地仓库和github仓库关联,本地仓库运行 $ git remote add origin git@github.com:kevinJser/gitstudy.git (后面的为github上仓库的ssh地址)

11. git push origin master 提交推送 向远程仓库origin推送master分支

12. git clone ......  克隆

13. git checkout -b dev  创建分支dev

    相当于两步操作 git branch dev    git checkout dev

14. git branch 查看当前分支

15. git merge dev  合并指定分支到当前分支 (Fast-forward,快进模式) 也就是直接把master指向dev的当前提交

16. git branch -d dev  删除dev分支

17. 合并冲突解决, 本地修改后 git add ...  git commit ... 最后删除临时分支

18. 强制禁用Fast forward模式合并(Fast forward模式下,删除分支后,会丢掉分支信息)

    禁用后,git会在merge时生成一个新的commit,这样就可以从分支历史上看到分支信息

19. bug分支,由于git中分支功能的强大,因此,每个bug都是可以通过一个新的临时分支来修复,修复后合并分支,然后删除临时分支

20. git stash 储存当前的工作,当工作未完成,需要切换到其他分支处理事务的时候,可以先把当前工作内容存储起来

    git stash list 查看存贮的工作内容。

    git stash apply stash@{0}(这个是 git stash list 中查看到的存储内容地址) 恢复工作内容,后面需要使用

    git stash drop  来删除保存的工作内容

    git stash pop 恢复的同时也把stash内容删除了

21. feature分支(实验性分支,比如添加新功能的时候写的一些实现新的代码),完成后合并删除

    git branch -D feature 强制删除feature分支,没有合并过的分支无法普通删除,只能强制删除

22. git remote 查看远程仓库

    git remote -v 详细信息

23. 当推送失败的时候,一般是因为和远程仓库有了冲突(比如,你的工作伙伴也修改了你推送的那个分支,并且已经推送到了远程仓库中)

    这时候,需要先pull下来,然后在本地合并,解决冲突.

24. git pull 的时候需要指定本地分支和远程仓库分支的链接

    git branch --set-upstream dev origin/dev,然后再git pull

    然后就是手动解决冲突,然后再push

25. git tag v1.0 为当前分支打上标签

    git tag 查看当前分支的标签

    要为之前的commit打标签:

    git log --pretty=oneline --abbreve-commit 查看各个commit的哈希号

    git tag v0.9 commit号

    git tag 展示出来的标签不是按照时间顺序列出,而是按照字母排序

    git show v0.9  查看标签信息

    git tag -a v0.1 -m "version 0.1 released" commit号

    git tag -d v0.1 删除标签

    git push origin

    git push origin --tags 推送所有尚未推送到远程的本地标签

    删除远程标签:

    git tag -d v0.9 先本地删除

    git push origin :refs/tags/v0.9 从远程删除

26. 忽略特殊文件

    https://github.com/github/gitignore

    忽略原则:

        1. 忽略操作系统自动生成的文件,比如缩略图等。

        2. 忽略编译生成的中间文件、可执行文件等,也就是如果一个文件是通过另外一个文件自动生成的,

          那自动生成的文件就没必要放进版本库,比如Java编译产生的.class文件。

        3. 忽略你自己的带有敏感信息的配置文件,比如存放口令的配置文件。

    git add -f App.class 强制添加到GIT, 因为gitignore的原因可能一些文件被忽略,这样可以强制添加。

    git check-ignore -v App.class 检查

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

推荐阅读更多精彩内容

  • 1. 安装 Github 查看是否安装git: $ git config --global user.name "...
    Albert_Sun阅读 13,626评论 9 163
  • 1.git的安装 1.1 在Windows上安装Git msysgit是Windows版的Git,从https:/...
    落魂灬阅读 12,645评论 4 54
  • 不断更新中 基本操作 查看git地址 git remote -v 将一个本地分支推送到服务器远程仓库 git...
    字字珠玑阅读 3,551评论 0 8
  • Git常用语法 [TOC] Git简介 描述 ​ Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,...
    君惜丶阅读 3,494评论 0 13
  • 人生,是一块白布。 在你出生后会变成各种颜色。 可怕的不是被染黑, 而是失去那去那纯白的心。 人生也是如此, 当你...
    ea9163d95f23阅读 179评论 0 2