美文网首页
工作常用 Git 命令

工作常用 Git 命令

作者: 石头的笔记 | 来源:发表于2019-05-04 01:32 被阅读0次

阅读目录:

  1. Git 基础概念
  2. 常用的命令
  3. 简明指南
    3.1 创建新仓库
    3.2 检出仓库
    3.3 添加和提交
    3.4 推送改动
    3.5 分支管理
    3.6 更新与合并
    3.7 查看历史
    3.8 版本回退
    3.9 删除文件
    3.10 远程仓库命令总结
    3.11 分支操作命令总结
  4. 参考文献

Git是Linus Benedict Torvalds更好的管理Linux系统而开发的一个“分布式版本控制工具”,对团队协作开发极其友好。高端大气上档次!

Git命令超级的多,所以本文只列举工作中最常用的几条命令:

0. GIt 基础概念

工作区(Working Directory):简单的说,就是本地可以编辑的文件;

版本库(Repository):工作区有一个隐藏目录 .git ,这个不算工作区,而是Git的版本库;

暂存区(stage):git add 后还没有提交到仓库的中间状态;

此外还有Git为我们自动创建的第一个分支 master,以及指向master的一个指针叫 HEAD

HEAD : 它指向你最后一次提交的结果。

Git 模型图:

Git 模型

1. 常用的命令

一周工作中,最常用的三种命令,总结成三个字:拉、提、推。
即:拉取远程仓库最新代码、提交代码到仓库、推送本地代码到远程

拉取远程仓库最新代码

1. git fetch origin <branch-name> // 先从远程分支抓取最新代码
2. git merge --no-ff -m '<merge message>' // 将抓下来的远程代码和本地代码合并

提交代码到仓库

将远程分支代码拉取下来以后,和本地代码合并,解决冲突后,提交自己的修改

1. git add <file-name> // 添加文件到暂存区
2. git commit -m '<commit message>'  // 将暂存区提交到仓库

推送本地代码到远程

1. git push // 将本地代码推送到远程仓库

2. 简明指南

2.1 创建新仓库

创建新文件夹,打开,然后执行

git init

以创建新的 git 仓库。

2.2 检出仓库

克隆远端服务器上的仓库:

git clone <respository-path>

2.3 添加和提交

你可以提出更改(把它们添加到暂存区),使用如下命令:
git add <filename> 或 git add --all
这是 git 基本工作流程的第一步;使用如下命令以实际提交改动:

git commit -m "代码提交信息"

现在,你的改动已经提交到了 HEAD,但是还没到你的远端仓库。

2.4 推送改动

你的改动现在已经在本地仓库的 HEAD中了。执行如下命令以将这些改动提交到远端仓库:

git push origin master

可以把 master 换成你想要推送的任何分支

2.5 分支管理

分支是用来将特性开发绝缘开来的。在你创建仓库的时候,master 是“默认的”分支。在其他分支上进行开发,完成后再将它们合并到主分支上。

创建一个叫做“feature_x”的分支,并切换过去:

git checkout -b feature_x

切换回主分支:

git checkout master

再把新建的分支删掉:

git branch -d feature_x

2.6 更新与合并

要更新你的本地仓库至最新改动,执行:

git pull

以在你的工作目录中 获取(fetch) 并 合并(merge) 远端的改动。
要合并其他分支到你的当前分支(例如 master),执行:

git merge <branch>

在这两种情况下,git 都会尝试去自动合并改动。遗憾的是,这可能并非每次都成功,并可能出现冲突(conflicts)。 这时候就需要你修改这些文件来手动合并这些冲突(conflicts)。改完之后,你需要执行如下命令以将它们标记为合并成功:

git add <filename>

在合并改动之前,你可以使用如下命令预览差异:

git diff <source_branch> <target_branch>

2.7 查看历史

如果你想了解本地仓库的历史记录,最简单的命令就是使用:

git log

你可以添加一些参数来修改他的输出,从而得到自己想要的结果。 只看某一个人的提交记录:

git log --author=<name>

一个压缩后的每一条提交记录只占一行的输出:

git log --pretty=oneline --abbrev-commit

或者你想通过 ASCII 艺术的树形结构来展示所有的分支, 每个分支都标示了他的名字和标签:

git log --graph --oneline --decorate --all

看看哪些文件改变了:

git log --name-status

这些只是你可以使用的参数中很小的一部分。更多的信息,参考:

git log --help

最全的一条查看历史命令:

git log --graph --pretty=oneline --abbrev-commit --decorate --all

2.8 版本回退

已经添加到暂存区stage,恢复到工作区:

git reset HEAD <file-name>

用版本库里的版本替换工作区的版本代码:

git checkout -- fileName

版本回退到上一个版本:

git reset --hard HEAD^

版本回退到某个提交:

git reset --hard <commit-id>

2.9 删除文件

rm fileName //删除本地,可直接git rm
git rm file Name //修改进入缓存区
git commit -m '' //提交到版本库

2.10 远程仓库命令总结

经过以上操作后,代码已经可以提交到本地的Git仓库,下面介绍远程仓库的一些操作

本地Git仓库和GitHub仓库之间的传输密钥:

ssh-keygen -t rsa -C "youremail@example.com" //使本机可以往github上提交

把本地仓库的内容关联到GitHub仓库:

git remote add origin git@github.com:user-name/respository-name.git

本地库的所有内容推送到远程库(初始化一个远程仓库代码):

git push -u origin master //当前分支master所有代码推送到远程进行初始化

本地修改后提交到远程仓库 (修改推送):

git push origin branch-name

从远程仓库克隆一个仓库到本地 :

git clone git@github.com:zhangyusir/hello.git

本地和远程同时创建分支产生关联:

git checkout -b branch-name origin/branch-name

将本地的分支和远程的分支关联起来:

git branch --set-upstream-to branch-name origin-name

2.11 分支操作命令总结

查看本地分支:

git branch

创建分支并切换:

git checkout -b <branch-name>

切换分支:

git checkout<branch-name>

在当前分支快速合并其他分支:

git merge branch-name

保留分支的提交历史既禁止快速合并:

git merge --no-ff -m "commit message" branch-name

删除分支:

git branch -d branch-name //强制删除-D

将当前分支的修改放到“储藏”:

存储 :git stash 恢复 : git stash pop 列表 : git stash list

3. 参考文献

  1. 廖雪峰:https://www.liaoxuefeng.com/wiki/896043488029600
  2. 阮一峰:http://www.ruanyifeng.com/blog/2014/06/git_remote.html
  3. 简明指南:http://rogerdudler.github.io/git-guide/index.zh.html
  4. Git奇技淫巧:https://github.com/521xueweihan/git-tips
  5. Git Book:https://git-scm.com/book/zh/v2

相关文章

  • GIt 操作补充

    常用的git操作命令 常用的git操作命令已经能够满足日常的工作需求 现补充一些高级命令 git branch -...

  • git 常用命令

    git 的工作流程图 工作常用的git 命令

  • 常用 Git 命令

    Git最常用的命令示意图 下面是常用 Git 命令清单。几个专用名词的译名如下。 Workspace:工作区 In...

  • Git 常用命令详解

    @[TOC](Git 常用命令详解) 1. Git 常用命令 1.1 常用git 命令图表汇总 1.2 配置个人信...

  • 常用 Git 命令

    Git最常用的命令示意图 下面是我整理的常用 Git 命令清单。几个专用名词的译名如下。 Workspace:工作...

  • git相关教程汇总

    1. git常用命令 git常用命令总结git常用命令讲解 2. git教程相关网站 廖雪峰的git教程猴子都能懂...

  • git学习记录

    工作区{ } 版本库{ } git常用命令 多人协作

  • 工作常用 Git 命令

    阅读目录:Git 基础概念常用的命令简明指南3.1 创建新仓库3.2 检出仓库3.3 添加和提交3.4 推送改动3...

  • GIT 版本管理 常用命令

    Git 常用命令流程图 Git常用操作命令: 初始化创建:$ git init //检出仓库:$ git clon...

  • GIt 常用操作指令

    《Git 使用规范流程》 《常用 Git 命令清单》 《Git 远程操作详解》 《Git工作流程》 开发过程中,用...

网友评论

      本文标题:工作常用 Git 命令

      本文链接:https://www.haomeiwen.com/subject/otytoqtx.html