前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Git 速查表(速查大全)

Git 速查表(速查大全)

作者头像
一个淡定的打工菜鸟
发布2018-12-27 15:55:36
4630
发布2018-12-27 15:55:36
举报
文章被收录于专栏:淡定的博客淡定的博客

原文链接:http://blog.kesixin.xin/article/61 今天查git命令的时候看到这篇文章,总结的很好,转载一发

Git命令大致分为这几个模块:

序号

模块

功能

1

CREATE

关于创建的

2

LOCAL CHANGES

关于本地改动方面的

3

COMMIT HISTORY

关于提交历史的

4

BRANCHES & TAGS

关于分支和标签类的

5

UPDATE & PUBLISH

关于更新和发布的

6

MERGE & REBASE

关于分支合并类的

7

UNDO

关于撤销类的

8

SUBMODULE

关于子模块

CREATE
  • 从远程仓库获取代码
代码语言:javascript
复制
git clone ssh://user@domain.com/repo.git
  • 初始化本地仓库
代码语言:javascript
复制
git init
LOCAL CHANGES
  • 查看仓库的状态,(显示已改动的文件)
代码语言:javascript
复制
git status
  • 比较工作区与最新本地版本库
代码语言:javascript
复制
git diff
git diff <fileName>
  • 添加所有变化(新增 new、修改 modified、删除 deleted)到暂存区
代码语言:javascript
复制
git add -A
  • 添加所有变化(新增 new、修改 modified)到暂存区,不包括被删除(deleted)文件
代码语言:javascript
复制
git add .
  • 添加修改(modified)和被删除(deleted)文件,不包括新文件(new)也就是不是被追踪文件(untracked)
代码语言:javascript
复制
git add -u
  • 添加文件内某些改动到暂存区
代码语言:javascript
复制
git add -p <file>
  • 提交所有的放在暂存区的文件和已经修改(不在暂存区)的文件,且问件是要被追踪(tracked)的
代码语言:javascript
复制
git commit -a
  • 提交所有被在暂存区的问件
代码语言:javascript
复制
git commit
  • 修改上一次提交日志
代码语言:javascript
复制
$ git commit --amend
COMMIT HISTORY
  • 查看提交日志
代码语言:javascript
复制
git log
  • 跟踪查看某个文件的历史修改记录
代码语言:javascript
复制
git log -p <file>
  • 查看文件是谁什么时候修改什么地方
代码语言:javascript
复制
git blame <file>
BRANCHES & TAGS
  • 查看所有分支(包括远程分支)
代码语言:javascript
复制
git branch -a
  • 查看所有分支(包括远程分支)和最后一次提交日志
代码语言:javascript
复制
git branch -av
  • 切换分支
代码语言:javascript
复制
git checkout <branch>
  • 新建分支,不带old-branch为默认在当前分支上建立新分支
代码语言:javascript
复制
git branch <new-branch> <old-branch>
  • 新建并且换分支
代码语言:javascript
复制
git checkout -b <new-branch>
  • 删除分支,先切换其他分支再删除
代码语言:javascript
复制
git branch -d  <branch>
  • 删除远程分支
代码语言:javascript
复制
git push origin --delete <branch>
  • 查看标签
代码语言:javascript
复制
git tag
  • 新建标签
代码语言:javascript
复制
git tag <tag-name>
  • 删除标签
代码语言:javascript
复制
git tag -d <tag-name>
  • 推送标签到远程
代码语言:javascript
复制
git push origin tagname
git push origin --tags
UPDATE & PUBLISH
  • 列出所有的仓库地址
代码语言:javascript
复制
git remote -v
  • 查看某个仓库的信息
代码语言:javascript
复制
git remote show <remote>
  • 添加仓库地址
代码语言:javascript
复制
git remote add <shortname> <url>
  • 从远程更新代码到本地但不合并
代码语言:javascript
复制
git fetch <remote>
  • 从远程更新代码到本地且合并
代码语言:javascript
复制
git pull <remote> <branch>
  • 发布到远程地址
代码语言:javascript
复制
git push <remote> <branch>
  • 删除远程地址分支
代码语言:javascript
复制
git branch -dr <remote/branch>
  • 上传标签
代码语言:javascript
复制
git push --tags
MERGE & REBASE
  • 合并目标分支到本地分支
代码语言:javascript
复制
git merge <branch>
  • 合并分支,但是不合并提交记录(commit),rebase合并如果有冲突则一个一个文件的去合并解决冲突
代码语言:javascript
复制
 git rebase <branch>
  • 合并终止
代码语言:javascript
复制
git rebase --abort
  • 继续合并
代码语言:javascript
复制
git rebase --continue
  • 使用配置的合并工具来解决冲突
代码语言:javascript
复制
git mergetool
  • 添加已手动合并的文件
代码语言:javascript
复制
git add <resolved-file>
  • 删除已手动合并的文件
代码语言:javascript
复制
git rm <resolved-file>
UNDO
  • 回退到最近一个提交
代码语言:javascript
复制
git reset --hard HEAD
  • 回退到上一次提交(倒数第二次)
代码语言:javascript
复制
git reset --hard HEAD^
  • 回退某次提交的某个文件
代码语言:javascript
复制
git checkout HEAD <file>
  • 回退到某个提交,但是不删除commit
代码语言:javascript
复制
git revert <commit>
  • 彻底回退到某个提交(commit和代码都回退了)
代码语言:javascript
复制
git reset --hard <commit>
  • 回退到某个提交(commit回退,代码保留)
代码语言:javascript
复制
git reset <commit>
  • 回退到某个提交,并保留以更改的文件
代码语言:javascript
复制
git reset --keep <commit>
SUBMODULE
  • 添加子模块
代码语言:javascript
复制
git submodule add https://github.com/xxxxxx/Test
  • 克隆你有子模块的项目
代码语言:javascript
复制
// 方法一
 git clone https://github.com/xxxxxx/MainProject    
 cd MainProject                //  子模块目录Test没有文件
 cd Test
 git submodule init
 git submodule update     // 执行完后就有子模块的代码了

//方法二
// 自动更新子模块中的代码
 git clone --recurse-submodules https://github.com/xxxxxx/MainProject
  • 合并两个不同的项目
代码语言:javascript
复制
// 需使用 `--allow-unrelated-histories`
// 将远程master项目合并到你本地项目
 git pull origin master --allow-unrelated-histories
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/12/16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Git命令大致分为这几个模块:
    • CREATE
      • LOCAL CHANGES
        • COMMIT HISTORY
          • BRANCHES & TAGS
            • UPDATE & PUBLISH
              • MERGE & REBASE
                • UNDO
                  • SUBMODULE
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档