关于远程仓库

在版本控制系统上,大约90%的操作都是在本地仓库(local repository)中进行的:暂存,提交,查看状态或者历史记录等等。除此之外,如果仅仅只有你一个人在这个项目里工作,你永远没有机会需要设置一个远程仓库(remote repository)。

只有当你需要和你的开发团队共享数据时,设置一个远程仓库才有意义。你可以把它想象成一个 “文件管理服务器”,利用这个服务器可以与开发团队的其他成员进行数据交换。

现在让我们来看一下本地仓库与远程仓库之间的区别吧:

位置

本地仓库位于每一个团队成员的本地计算机上。相反,远程仓库则被设置在一个能被所有团队成员访问到的远程服务器上,基本上都是在互联网上或者是本地局域网中。

特点

从技术上讲,一个远程仓库和一个本地仓库并不存在很大差异。和本地仓库一样,它包含分支,提交和标记。然而,本地存储库存在一个与之相关的工作副本(working copy),就是你当前的工作目录。其中包括了你从项目中签出的一些版本文件。而一个远程仓库就不包含任何工作目录,它仅仅是由一系列 “.git” 目录组成的。

创建

你有两种方法来创建一个本地仓库到你的本地计算机上,你可以新建一个空的仓库,或者是克隆一个已存在的远程仓库到你的本地计算机中。
创建一个新的远程仓库同样的也有两种方法。方法一,假如已经存在了一个本地仓库,并且你想以这个本地仓库作为远程仓库的基准,你使用 “--bare” 参数来可以克隆这个本地仓库。方法二,假如你想要新建一个空的远程仓库,你可以使用 “git init” 命令,并且同时也要加上 “--bare” 参数。

本地 / 远程工作流程

在 Git 中,仅仅存在一小部分应用在远程仓库上的命令。

绝大多数工作都是针对本地存仓库的。到现在为止(除去克隆命令 “git clone” 外),我们一直只是工作在我们本地仓库上,并且从没有离开过本地计算机。我们不依赖于任何互联网或局域网连接,完全是脱机工作的。

我们将会在本章的之后小节中来一起学习一些远程仓库上的命令。

Get our popular Git Cheat Sheet for free!

About Us

As the makers of Tower, the best Git client for Mac and Windows, we help over 100,000 users in companies like Apple, Google, Amazon, Twitter, and Ebay get the most out of Git.

Just like with Tower, our mission with this platform is to help people become better professionals.

That's why we provide our guides, videos, and cheat sheets (about version control with Git and lots of other topics) for free.