日常工作必会的git命令

Posted 舒泱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了日常工作必会的git命令相关的知识,希望对你有一定的参考价值。

目录


       

       

       

一、常用git命令

  • 1、git status,简写git st,查看本地修改状态
  • 2、git add
    git add 文件名 ,暂存名为【文件名】的文件的变化
    git add . ,暂存所有文件的变化
  • 3、 git commit -m “本次提交信息”, 提交暂存区的内容到本地仓库
  • 4、git commit -amend,简写git ca,追加到上一次提交
  • 5、git branch 分支名 , 在本地创建名为【分支名】的分支
  • 6、git checkout 分支名,简写git co分支名,切换到名为【分支名】的分支上去
    git checkout 提交号,让HEAD指向提交哈希值为【提交号】的提交记录
  • 7、git checkout -b 分支名,简写git co -b 分支名,创建并切换到该分支
  • 8、^, 上一个提交记录
    master^,master的父节点
    master^^,master的第二个父节点
    git checkout master^,切换到master分支的父节点
    git checkout HEAD^,让HEAD指向上一个提交记录
  • 9、~ num,往上num个提交记录,例如git checkout HEAD~3,向上移动3个节点
  • 10、git reset,撤销提交,例如git reset HEAD~1,撤销上一次提交,本地仓库不知道上一次提交了,但上一次提交仍在工作区,但是未加入暂存区。
  • 11、git revert,撤销本地的上一次提交,并将这个更改推送给远程仓库。
  • 12、git cherry-pick 提交号,将提交哈希值为【提交号】的提交复制到当前所在位置(HEAD)。
  • 13、 git rebase -i HEAD~2,合并最近2次提交
  • 14、git push,向远程仓库推本地数据。
  • 15、 git fetch,从远程仓库下载本地仓库中缺失的提交记录并更新远程分支指针(如 origin/master),git fetch 以后,本地仓库与远程仓库并没有同步。git可能已经将进行这一操作所需的所有数据都下载了下来,但是并没有修改你本地的文件,你可以将git fetch理解为单纯的下载操作,下载下来后,还需要你自己合并分支,用merge或rebase等。
  • 16、 git pull,从远程仓库拉取数据并合并到本地,git pull=git fetch+git merge,本地仓库与远程仓库同步了。
  • 17、git pull --rebase,简写为git pl,从远程仓库拉取数据并合并到本地,=git fetch+git rebase。
  • 18、当你drop commit后,工作区的修改都没了,如何恢复?首先,git reflog 查看历史提交的hash值,复制你要恢复的提交的hash值,然后git reset --hard hash值,就可以恢复某次提交了。
  • 19、合并分支feature与主分支master:现在你本地在feature分支上,要将该分支和master合并一下,你可以:1)git co master,切到master分支上。2)git pull --rebase,拉取远端master并合并到本地master。3)git co feature,切回feature分支。4)git merge master,将master的修改合到feature。以上步骤可以直接用一条命令代替:git merge origin/master
  • 20、git branch -u origin/分支名 本地分支名:建立远程分支和本地分支的联系

       

       

       

二、在命令行里使用git时常用的Linux命令

  • cd 目录名:切换当前工作目录到名为【目录名】的目录下
    \\~ :home目录,cd ~就表示切换到home目录
    . :目前所在目录
    .. :目前目录的上一层目录

  • pwd: 显示当前所在的目录路径。

  • ls(ll): 都是列出当前目录中的所有文件,只不过ll(两个ll)列出的内容更为详细。

  • mkdir:新建一个目录(文件夹)

  • rm 文件名:删除一个名为【文件名】的文件

  • rm -r 文件夹名: 删除一个名为【文件夹名】的文件夹

  • mv 文件名 目录名:将名为【文件名】的文件移动到名为【目录名】的目录下,mv file.txt /home/hh 就是移动file.txt到/home/hh目录下。

  • history 查看命令历史。

  • touch 文件名:在当前目录下新建一个名为【文件名】的文件。

  • vim 文件名:打开名为【文件名】的文件。
    此时输入:
    l:将光标移至当前行的开头位置,并切换至插入模式
    i:切换到插入模式,并在当前光标位置之前开始插入
    a:切换到插入模式,并在当前光标位置之后开始插入
    h:光标向左移动一个位置
    l:光标向右移动一个位置
    j:光标向下移动一行
    k:光标向上移动一行
    :q:退出当前文件,仅在没有未保存更改的情况下
    :wq:保存并退出当前文件

       

       

       

三、强烈推荐一个git学习网站

Learn Git Branching
你可以在Learn Git Branching上选择关卡,完成题目像通关一样学习git,实际操作比光看要容易掌握得多。

而且有可视化的图,更容易理解

以上是关于日常工作必会的git命令的主要内容,如果未能解决你的问题,请参考以下文章

日常工作必会的git命令

日常工作必会的git命令

程序员必会的git语法及gitlabgithub应用

大数据必知必会的-Linux命令

大数据必知必会的-Linux命令

程序员必会的git语法及gitlabgithub应用