这是我参与「第四届青训营 」笔记创作活动的第14天
git工作流程
一般工作流程如下:
- 克隆 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 | 上传远程代码并合并 |