本文说明如何将远程仓库同步到本地,以及本地仓库添加文件后如何上传至远程仓库。

根据前面几篇博文的介绍,一般来讲我们在远程(即浏览器端)操作GitHub上建立的仓库即可。
但是,在远程仓库中添加和删除文件很不方便。因此,需要通过一些指令来将远程仓库更新至
本地仓库(即电脑硬盘中存储的仓库),添加文件后再将本地仓库上传至远程仓库。

远程仓库的同步

如果本地还没有该仓库,则需要从远程仓库clone到本地。Windows10系统用windows+X快捷键按出一个菜单栏并选择Windows PowerShell(管理员)
打开首先将当前路径修改至期望存放该仓库的路径,然后使用git clone命令将其克隆至本地。具体命令如下:

1
2
3
cd e:       #打开E盘,准备在根目录下存放该仓库
git clone https://github.com/ColaInLibrary/colainlibrary.github.com #将仓库的URL地址添加在命令后即可同步至本地
cd colainlibrary.github.com #打开同步后的本地仓库

三条指令执行完后便从PowerShell中打开了本地仓库。如果在执行git clone时失败,那应该是git没有安装的原因,
那么需要下载Git for Windows.安装后可以在文件浏览器中打开本地文件夹colainlibrary.github.com
再点右键,选择Git Bash Here,则可以直接使用git命令,而不需要像 PowerShell一样先打开到本地文件路径。

如果是已经创建好的本地仓库,从命令行中打开本地仓库后,执行以下命令来将远程仓库同步至本地。

1
git pull

Git中登录GitHub账号

为了实现本地仓库同步至远程仓库,往往需要在Git中登录自己的账号,相应的命令为:

1
2
git config --global user.email "1901151471@qq.com"    #登录邮箱
git config --global user.name "ColaInLibrary" #登录用户名

本地仓库同步至远程

当在本地仓库中添加图片(或者其他文件)至路径E:\colainlibrary.github.com\assests\images后,需要将本地仓库使用如下指令更新至远程仓库。

1
2
3
4
git status    #查看当前状态
git add * #将所有文件添加至缓冲区,也可以使用 git add \assests\images\文件名.jpg添加单个文件
git commit -m "image update" #引号中是在说本次更新内容
git push #将在缓冲区的文件push到远程仓库

远程仓库文件的删除

在远程仓库中删除文件十分不便,因此可以先将远程仓库同步至本地仓库再将其删除。以删除远程仓库中的文件夹target为例,首先打开本地仓库的文件夹,然后执行下列命令:

1
2
3
4
git pull    #远程仓库同步
git rm -r --cached target #删除target文件夹
git commit -m "删除target文件夹" #引号中是说明本次更新内容
git push #将本次更新push到远程仓库

值得一提的是,经过以上操作,远程仓库中的文件夹target被删除掉了,本地仓库中的不会被删掉。