目录
一、文章简介
如果你作为项目开发中的一员,在Git上已经创建好了项目仓库,需要项目成员将项目文件上传到项目仓库中,这时该如何操作?本文通过VScode + Git的方式进行文件上传等一系列操作,直接按照下列操作顺序进行操作即可。
二、具体操作流程
1、操作前提
- 已安装好VSCode 和 Git ;
- 已创建好仓库和生成SSH密钥对(密钥的生成详见下面介绍);
2、设置用户名、用户邮箱
(1)打开命令框
(2)配置用户名
git config --global user.name "用户名",然后点击回车
(3)配置用户名邮箱
git config --global user.email "邮箱",然后点击回车
用户名和邮箱的查看方式,参考下图
(4)查看配置
git config --list
3、SSH密钥对的介绍、生成及配置
(1)什么是SSH?
SSH 为 Secure Shell(安全外壳协议)的缩写,由 IETF 的网络小组(Network Working Group)所制定。利用SSH协议可以有效防止远程管理过程中的信息泄露问题,弥补网络中的漏洞。使用ssh协议通信时,推荐使用基于密钥的验证方式。你必须为自己创建一对密匙,并把公用密匙放在需要访问的服务器上。
(2)为什么要生成SSH密钥对?
如果不设置 ssh 公钥每次提交代码就要输入你的帐号密码。如果设置了公钥之后你的机器和 github或者gitee 通信的时候, github或者gitee可以通过公钥识别出你是可信赖用户,这样就不需要每次 git 和 github或者gitee 通信的时候都要输入密码了。
(3)SSH密钥对的生成
- 打开命令框
- 检查是否已生成密钥(公钥和私钥)
-
若没有创建,则使用下述命令进行创建
-
ssh-keygen -t rsa -C "密钥标识"
-
注:密钥标识:一般是邮箱地址(上述你输入的邮箱地址)
-
然后一路回车即可。
-
- 密钥生成之后可通过上边的指令查看,也可以在文件夹中直接查看,一般生成的密钥位置在:
- win: C:\Users\用户名\.ssh
- ubuntu: /home/用户名/.ssh
- 一般情况下,在外部使用时,用到的都是公钥。
- SSH密钥创建完成之后,用记事本打开id_rsa.pub文件,复制里边的内容,然后登录Git仓库,按照下图操作,将复制内容粘贴到密钥内容里,然后点击下边的增加密钥保存即可。
4、仓库派生
首先说明一下为什么需要仓库项目文件的派生,因为创建人用自己的Git账号创建的Git仓库中的项目文件,你是这个项目中的成员,之所以你能看到这个项目文件中的信息,是因为创建者把你的账号添加到项目仓库中了。然而目前你也就是只能看到而已,你无法操作项目文件中的内容(这里也就是说你无法操作别人仓库中的内容,当前只是别人给你开了能查看的权限),那么作为项目中的一员,我该如何操作项目文件呢?第一步就是派生,简单的说就是把创建者仓库中的项目文件完全的复制到自己的仓库中,这样两个人的项目文件内容就达到了同步的目的,这时你的仓库中有了一个和项目文件一样内容的文件库,你想修改哪部分内容,直接添加或者修改即可。到目前为止,你可以修改你自己仓库中的项目文件内容了,那么作为一个项目来说,创建项目仓库的目的就是方便项目人员之间的协作,那么该如何协作呢?目前你的Git仓库中不是有了一个和创建者一模一样的项目文件库了嘛,接下来你对项目的任何操作相当于你对自己的Git仓库中项目文件的操作,与其他人互不干扰,当你改完自己仓库中的项目内容时,你需要提交合并请求,将你修改的内容合并到总的分支中去,项目创建人会在请求中看到你对整个项目文件的操作情况,如果项目创建人同意你的请求,你对项目文件的修改就会同步到项目创建人的项目文件中去。这里大家应该看出,Git仓库实现协同的步骤就是,首先由项目管理者创建项目仓库(这相当于集团总部),然后由项目管理者将项目人员添加到这个仓库中(也就是附属分支部门),这时分支人员可以查看总部中的所有文件,虽然作为协同,你无法私自修改,如果你想修改,你需要把总部文件全部复制到你的分支部门去,如果你想修改,你先在你自己的账号上对复制的文件内容中去修改,这样你怎么修改我管不着(因为那是你在自己的账号上的修改,只有你自己能看到,目前并没有合并到总部去,还不是正式文件),当你想将修改的内容作为公司正式文件发布,那么分支就需要向总部提交文件合并请求,总部在请求中看到你对项目文件修改内容之后,如果统一你的请求,那么你对项目文件的修改内容就同步到总部账号中的项目文件中去了,这时相当于你正式发布了,别人能同时看到你的更新内容了。
(1)找到Git仓库中的项目
一般登录Git账号之后,点击探索,然后点击组织,就可以在项目展示界面看到目前自己关联的项目,点击自己需要派生的项目,项目里边可能包含多个列表,点击自己想要派生的列表即可,列表点击进去就可以看到项目的详细内容。
(2)派生项目文件
点击右上方的派生,选择派生对象之后,即可派生完成。派生成功之后,你在你自己的仓库中就会看到项目文件了(点击账号 → 个人信息 → 仓库列表)。
5、从仓库中拉取项目文件至本地
到目前,项目文件已经派生到自己仓库了,接下来将自己仓库中的项目文件夹拉取到本地。具体步骤如下:
(1)打算将拉取文件放置在哪个文件夹下,就在哪个文件中右击Open Git Bash here;
(2)在命令栏中输入git clone 你仓库项目文件的SSH地址,你仓库项目文件的SSH地址的获取见下图。
(3)项目文件拉取完成见下图,以及查看文件夹中是否存在拉取的文件。
6、通过VSCode同步到Git远程仓库主分支
上边已经将远程仓库中的文件拉取到本地了,然后操作项目文件夹就行了。下一步通过VSCode与Git仓库同步(当然方法并不是唯一的,也可以通过命令进行同步)。
(1)从VSCode打开本地项目文件夹(文件夹需要包含.git文件)
(2)打开文件夹之后,界面就会显示本地文件夹需要提交的文件修改情况。举例:在项目文件夹中的06 硬件设计文件夹中添加了一个docx文件(测试文件(空)),将文件同步到远程仓库。(操作步骤为:在更改选项中选取打算提交的文件,点击文件后面的+号,然后文件会从更改选项移动至暂存的更改选项,最后点击提交,点击提交之后在右侧会显示更改描述栏,在里面输入你的更改描述(该描述显示在远程仓库的文件夹界面),添加完描述之后,点击保存,然后关闭该文件即可。最后点击同步更改就把暂存的更改选项中的文件上传到远程仓库中了。)
(3)此时查看远程仓库就会看到你的更改了。
7、在远程仓库提交合并请求
上边的操作已经将你要修改的项目文件上传到你自己的远程仓库了,下面操作是将你自己的远程仓库中的项目文件同步到主账号下,相当于文件的发布公开。
(1)点击合并请求,然后再点击创建请求
(2)在创建合并请求中设定合并的目标分支和源分支。
(2)创建完合并请求之后,等待同意即可。