Git基础(三)
上一节已经将git在本地使用的所有要点都说明了,本节主要说明如何与远程仓库交互。git可以完全脱离网络使用,但是如果本地硬盘损坏,所有修改都会永久失去。使用远程仓库增加备份是很有必要的。
一、查看本地仓库的远程仓库的关系
使用git remote
可以查看当前仓库与远程仓库的关系。
origin
是git在clone项目时为远程仓库服务器生成的默认名字,使用-v
选项就可以查看远程仓库的详细信息。
其中,origin
表示当前的远程服务器的名字,git@github.com:Future-Walkers/HandBook.git
表示远程仓库的地址,git@
表示使用的协议是git
,他通过SSH
来验证是否具有clone
的权限。最后的(fetch)
和(push)
则表示当前对于远程仓库具有fetch
和push
的权限。
当你在本地完成修改后,如果想要上传至远程仓库,需要使用git remote add <repo>
的方式将本地仓库与远程仓库关联。
二、将本地修改上传至远程仓库
在与远程仓库建立关联后,就可以通过git push
的命令将本地的修改同步到远程的仓库(当然要先将修改添加到暂存区并提交)。
前面看到,本地仓库具有fetch
和push
的权限。fetch
命令就是将远程仓库的修改拉取到本地,与他相似的还有pull
命令。这两个命令的区别是,pull
命令出了将远程修改拉取到本地,还会自动将修改合并到你的工作区。
fetch
后面可以加上远程仓库的名字,例如git fetch gitlab
就是拉取gitlab
服务器的代码。
最佳实践是,使用git fetch
更新本地仓库,并使用git rebase
将远程修改合并,然后在提交你的代码。
提交代码使用git push [remote-git-server-name] [branch-name]
,所以说你明白为什么一般大家都会不由自主地使用git push origin master
了吧,origin
是默认的远程仓库名,master
是默认的分支(现在GitHub喜欢在创建项目时使用main
作为主分支)。在单人项目中,git push origin master
的使用频率非常高,这没什么问题。但是,如果多人协作时,使用单一分支会很容易发生冲突。
三、远程仓库查看
使用git remote show repo-name
就可以查看远程仓库的情况,这个命令暂时用不太到,先记着就好。
Last updated
Was this helpful?