Skip to content

Latest commit

 

History

History
45 lines (25 loc) · 3.01 KB

git-repository.md

File metadata and controls

45 lines (25 loc) · 3.01 KB

远程仓库和本地仓库

使用版本管理控制器,我们就不得不说一下,本地仓库和远程仓库这两个东西。在使用git的过程中我们也学要熟悉使用git的命令来管理仓库。

远程仓库

远程仓库其实理解起来并不复杂,他实际就是你的仓库在另一台计算机上的拷贝。你可以通过因特网与这台计算机通信。

我们通过与远程仓库的交互主要包含两块:

  • 把本地的提交记录传到远程仓库;
  • 从远程仓库中获取新的提交记录。

虽然,我们于远程仓库的通信主要只有这两块,但是远程仓库还有一些强大的特性需要我们来了解。

  • 远程仓库是一个强大的备份。虽然本地仓库也有恢复项目到指定版本 的能力,但所有的信息都保存在本地。如果使用远程仓库后,就不用担心本地数据的丢失。
  • 方便团队间的协作开发,只要搭建好开发环境,就可以拉取远程仓库的项目进行开发,方便更新项目,方便管理项目。

而我们所熟知的对远程仓库进行管理的一个是GitHub(外国的),另一个是码云(csdn推出的)都很好用。

本地仓库

本地仓库顾名思义就是放在本地计算机上的版本库。

未与远程仓库进行连接的本地仓库,需要至少一次本地初始化(命令 git init),如果是从远程服务器(如: GitHub)直接拉取到本地的版本仓库,则不需要初始化。

如果修改了本地仓库中的某些文件,并且需要把它上传的远程仓库,需要如下这样操作:

  • 首先,将文件添加到缓存区,用git add 文件路径命令;

  • 然后,把缓存区中的文件进行编译,用git commit -m '修改内容的描述'命令;

  • 紧接着,拉取远程仓库的最新代码,用git pull命令;

  • 再然后,如果远程仓库有比本次提交早的内容,需用git merge命令合并分支。结果分2种情况。

    • 修改了相同的文件,但存在冲突。git会提示哪些文件的哪些内容有冲突, 审查代码 -> 修改代码 -> 运行程序 -> 调试 ->;重复上述操作。
    • 修改了相同的文件,但不存在冲突。用git merge命令合并分支。
  • 当一切OK,用git push推送本地仓库远程仓库

注:如果本地仓库远程仓库是同源的,用git push origin 分支名称(如果是本地分支和远程分支同源且名字一样,可以使用git push)。

注:如果本地仓库远程仓库是非同源的,用git push '源名称' '分支名称' 。可以通过git remote add origin https://github.com/用户名/远程仓库名命令,为本地仓库添加多个源。

注:如果本地仓库关联了多个远程仓库,同时需要一个命令更新所有关联的远程仓库,第一次需要用git --setup-stream '源名' '分支名称'来实现关联,之后的每一次只需要使用git push即可。