盒子
盒子

Git远程操作

这里介绍Git对远程仓库的一些基本操作,远程操作即是对网络上某一个远程而非本地的仓库进行操作。

本篇主要介绍以下几个命令:

1
2
3
4
git clone        #获取远程仓库
git remote add #添加远程仓库
git push #推送至远程仓库
git pull #获取最新的远程仓库分支

开始之前,首先需要在Github上创建一个账户,并在账户中创建对应的远程仓库,这里创建了名为giter的远程仓库。

git remote add

GitHub上的仓库路径名为`git@github.com:用户名/仓库名.git,下面使用git remote addgiter`设置为本地仓库的远程仓库:

1
git remote add origin git@github.com:evilfinder/giter.git

其中origin为远程仓库的本地标识符。

git push

如果想把本地仓库中当前分支下的内容推送到远程仓库,要使用git push完成,例如本地仓库giter-local将其推送到远程仓库giter的master分之下,执行命令:

1
git push -u origin master

此时,当前分支的内容就被推送到了远程仓库的master分之下,其中的-u参数可以将远程仓库的master分支设置为本地仓库的upstream,这样将来使用git pull命令从远程仓库获取的时候,本地仓库的分支就可以直接从远程仓库的master分支获取内容了,不必再次添加参数。
如果想推送到远程仓库的其他分支,可以切换到本地要推送的分支并在执行git push命令时,指定好要推送的远程分支即可,例如将本地的fix-bug分支推送到远程的fix-bug上,执行如下命令:

1
2
git checkout fix-bug
git push -u origin fix-bug

git clone

获取远程仓库,即是将远程仓库克隆到本地,执行git clone命令之后默认位于master分之下,同时系统自动将origin设置为远程仓库的标识符,此时当前本地仓库的master分支和远程仓库的master分支内容相同,下面获取远程仓库finder

1
git clone https://github.com/EvilFinder/Finder.git

我们可以使用git branch -a查看当前分支相关信息,-a参数可以显示本地和远程仓库有的所有分支信息。
如果想要获取远程仓库finder的分支fix-bug,可以使用如下命令:

1
git checkout -b fix-bug origin/fix-bug

修改本地的fix-bug分支:

提交修改,将fix-bug分支推送到远程仓库:

1
2
git commit -m "Add Fix-Bug"
git push

git pull

若本地仓库和远程仓库内容不一致,本地仓库的内容旧于远程仓库的内容,需要更新本地仓库以保证是在最新的仓库上进行开发,这时需要使用git pull命令,例如将本地仓库的分支fix-bug更新到最新状态,执行命令:

1
git pull origin fix-bug

这样本地仓库的fix-bug分支就能保持和远程仓库的同步,已达到保持最新状态的目的。