zoukankan      html  css  js  c++  java
  • git常用命令整理

    Git 常用命令

    备注:此文档整理的内容只针对git命令的通常用法和注意事项,若要查看详细使用说明请参考:

    man git cmd-name 或 git cmd-name --help

     

    命令名称

    clone

    通常用法

    git clone git@git.chinahisu.com:shanxigaoqing/midware_main.git  (使用默认仓库名)

    若要自定义仓库名,只需在末尾处加上自定义的名称即可。

    使用说明

    复制服务器端的代码到本地当前目录中(与服务器交互),clone下来的库只包含服务器端库的当前工作分支,其他分支并不会一并clone下来。

     

     

    命令名称

    add

    通常用法

    git add filename  (添加或更新单个文件到索引库)

    git add directory  (添加或更新目录到索引库,包含目录下所有的文件)

    git add .  (添加或更新当前目录下所有文件到索引库)

    使用说明

    此命令主要用于将我们想要提交的文件添加或更新到索引库中,然后通过git commit命令提交到本地仓库中,使用此命令时,注意查看工程根目录下是否有.gitignore文件,如果没有,记得一定要手工添加上,否则你会受到鄙视的,因为此文件是用来过滤那些不想提交的文件用的,写好此文件以后就可以直接敲: git add . 命令而不用担心把不必要的文件一同提交了。

    .gitignore文件的写法范例:

    # 此行为注释,将被 Git 忽略

    *.a        # 忽略所有 .a 结尾的文件

    /TODO    # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO

    build/     # 忽略 build/ 目录下的所有文件

    doc/*.txt   # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

     

    命令名称

    status

    通常用法

    git status    (常规显示)

    git status -s  (简短显示)

    使用说明

    此命令主要用来查看文件状态,在commit前使用status命令查看一遍文件状态是一个好习惯。

     

     

    命令名称

    commit

    通常用法

    git commit (需要在打开的文本编辑器里填写注释,否则无法提交)

    git commit -m “log-info” (这样就不需要在文本编辑器里填写了,二者选其一)

    git commit -a (跳过add直接提交,但不会提交新添加的文件)

    使用说明

    使用此命令前,请一定要确认还有什么修改过的或新建的文件还没有 git add 过,否则提交的时候不会记录这些还没暂存起来的变化。所以,每次准备提交前,先用 git status 看下,是不是都已暂存起来了,然后再运行此命令;

    有时候我们提交完了才发现漏掉了几个文件没有加,或者提交信息写错了,想要撤消刚才的提交操作,可以使用 --amend 选项重新提交。

     

    命令名称

    checkout

    通常用法

    git checkout branch-name (切换到指定分支)

    git checkout -b branch-name (创建一个分支并切换过去)

    git chechout filename (从暂存区检出指定的文件覆盖工作区中相应的文件)

    git checkout branch-name filename (从指定分支中检出指定文件到当前分支中,同时覆盖暂存区和工作区)

    使用说明

     

    命令名称

    branch

    通常用法

    git branch (列出本地已经存在的分支,并且在当前分支的前面加“*”号标记)

    git branch -a (列出所有存在的分支,包含本地和远程)

    git branch branch-name (基于当前分支创建一个新的分支,分支命名建议:br-name)

    git branch -d branch-name (删除分支,强制删除请使用 -D )

    git branch -m old-name new-name (重命名分支, 强制重命名请使用 -M )

    使用说明

     

    命令名称

    fetch

    通常用法

    git fetch (拉取已关联的远程仓库中所有的分支数据,并在本地建立对应的副本)

    git fetch remote-repository (拉取指定的远程仓库下所有分支数据)

    git fetch remote-repository remote-branch (拉取指定远程仓库的指定分支到FETCH-HEAD)

    git fetch remote-repository remote-branch:local-branch (拉取指定远程仓库中的指定分支到本地指定分支中,如果指定的本地分支不存在则创建它,若已存在则根据情况进行合并)

    使用说明

     

     

    命令名称

    diff

    通常用法

    git diff (比较工作区和暂存区)

    git diff --staged/cached (比较暂存区和仓库)

    git diff HEAD (比较工作区和仓库)

    git diff branch-name (比较当前分支工作区与指定分支的差异)

    git diff branch1 branch2 (比较两个分支)

    git diff commit1 commit2 (比较两个不同的提交版本)

    使用说明

    Diff命令的输出不是很通俗易懂,个人建议用difftool代替diff命令,difftool可以自定义比较工具,个人推荐meld工具,配置方式:git config --global diff.tool meld,配置好以后,就可以在合并不同分支之前先用difftool工具进行修改,这样在很多时候比用mergetool更实用。

     

    命令名称

    push

    通常用法

    git push remote-repository :branch (删除指定远程仓库中指定的分支)

    git push remote-repository local-branch (推送指定分支到远程仓库中,若没有对应分支则创建它)

    git push remote-repository local-branch:remote-branch (推送指定分支到远程仓库中的指定分支)

    使用说明

     

    命令名称

    未完待续 ......

    通常用法

    使用说明

     

    作者:潘洪银

    地址:http://www.cnblogs.com/panhongyin

  • 相关阅读:
    数学
    ACM之路
    归并排序(分治法,nlogn,较为稳定)
    字典树基础模板
    c语言对象(函数,类,变量)的声明与定义
    typedef的高级用法---------理解函数声明
    4503: 两个串
    HDU 5972 Regular Number
    HDU 5215 Cycle
    Hihocoder #1513 : 小Hi的烦恼
  • 原文地址:https://www.cnblogs.com/panhongyin/p/5586628.html
Copyright © 2011-2022 走看看