Git 远程仓库 pull/push 操作详解

简要说明使用 Git 操作远程仓库时 pull 和 push 命令机制及原理

Git 其实是是一个不用网络的仓库(本地仓库),你也可以把数据 push 到 GitHub 上(远程仓库)。

你现在的 pull 和 push 都是本地版本库和远程仓库之间的数据交互。

组成

在你的本地仓库,其实是由两部分组成:

1
2
3
4
5
1. 工作区 (Working Directory) //看得见的
2. 版本库 (Repository) //看不见的
版本库又包括:
* 暂存区(Stage)
* 分支 (branch)

流程:

初次提交:

  1. 通过git add 将文件 工作区 —>暂存区 (本地)
  2. 通过git commit 将文件 暂存区 —>分支 (本地)
  3. 通过git push 将文件 分支 —>远程库 (github)

提交改动:

  1. 通过git commit将文件 暂存区 —>分支 (本地)
  2. 通过git push 将文件 分支 —>远程库 (github)

pull&push

  1. 通过git pull 将文件 远程库 —>分支 (本地)
  2. 通过git push 将文件 分支 —>远程库 (github)

而上面的两个操作是需要有改动,有差异才能执行。
所以会提示暂存区和远程库的内容一致。

原文