git干货|青训营笔记

53 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的第14天

git工作流程

image.png

一般工作流程如下:

  • 克隆 Git 资源作为工作目录。
  • 在克隆的资源上添加或修改文件。
  • 如果其他人修改了,你可以更新资源。
  • 在提交前查看修改。
  • 提交修改。
  • 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。

git 理解

  • 资源库:也就是我们代码最终提交的归宿,没啥好说的。
  • 工作副本:这个其实主要储存了远程仓库各分支数据在本地的一个副本,你可以打开你 Git 项目下的 .git 文件,里面有个 refs/remotes,这里就主要存的就是远程仓库的分支信息,一般你执行 push 或者 pull、fetch 都会往这里进行更新。

我们再来来理解下 Git 工作区、暂存区和版本库概念:

  • 工作区: 就是你在电脑里能看到的目录。
  • 暂存区: 英文叫 stage 或 index。一般存放在 .git 目录下的 index 文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
  • 版本库: 工作区有一个隐藏目录 .git,这个不算工作区,而是 Git 的版本库

Git 创建仓库

使用当前目录作为 Git 仓库,我们只需使它初始化。

git init 
git init xxx

该命令执行完后会在当前目录生成一个 .git 目录。

使用我们指定目录作为Git仓库。

$ git add *.c
$ git add README
$ git commit -m '初始化项目版本'

以上命令将目录下以 .c 结尾及 README 文件提交到仓库中。

git clone

我们使用 git clone 从现有 Git 仓库中拷贝项目(类似 svn checkout)。

克隆仓库的命令格式为:

git clone <repo>

如果我们需要克隆到指定的目录,可以使用以下命令格式:

git clone <repo> <directory>
  • repo: Git 仓库。
  • directory: 本地目录。

Git 基本操作

$ git init    
$ git add .    
$ git commit  
  • git init - 初始化仓库。
  • git add . - 添加文件到暂存区。
  • git commit - 将暂存区内容添加到仓库中。 git add | 添加文件到暂存区 | | ------------ | -------------------- | | git status | 查看仓库当前的状态,显示有变更的文件。 | | git diff | 比较文件的不同,即暂存区和工作区的差异。 | | git commit | 提交暂存区到本地仓库。 | | git reset | 回退版本。 | | git rm | 将文件从暂存区和工作区中删除。 | | git mv | 移动或重命名工作区文件。
git log查看历史提交记录
git blame <file>以列表形式查看指定文件的历史修改记录
git remote远程仓库操作
git fetch从远程获取代码库
git pull下载远程代码并合并
git push上传远程代码并合并