7

如何在vscode中使用GitLab

我同广大码友们一样,好不容易赶上了个节假日,回到家一顿安排,可屁股还没坐热就接到线上紧急BUG需要修复,木办法,拉项目导分支又是一顿排查,最后git stash,git add,git commitgit push最后gerge 打包发布。。。下面用vscode说一下如何进行这一系列操作

git 生成 ssh key

由于本地Git仓库和GitLab仓库之间的传输是通过SSH加密的,所以必须要让github仓库认证你SSH key,在此之前,必须要生成SSH key

如果已安装了git,并且配置了用户名和邮箱(windows)去c盘->用户->自己的用户名->.ssh下看是否有id_rsa、id_rsa.pub文件否则本地用使用ssh命令创建新的sshkey(我通过git bash)来创建:

$ ssh-keygen -t rsa -C "youremail@example.com"

ssh-keygen命令用于为“ssh”生成、管理和转换认证密钥,它支持RSA和DSA两种认证密钥。

语法:

ssh-keygen (选项)

选项

  • -b:指定密钥长度
  • -e:读取openssh的私钥或者公钥文件
  • -C:添加注释
  • -f:指定用来保存密钥的文件名
  • -l:显示公钥文件的指纹数据
  • -i:读取未加密的ssh-v2兼容的私钥/公钥文件,然后在标准输出设备上显示openssh兼容的私钥/公钥
  • -N:提供一个新密语
  • -P:提供(旧)密语
  • -q:静默模式
  • -t:指定要创建的密钥类型

其中密钥类型 -t 说明:

1、如果没有指定则默认生成用于SSH-2的RSA密钥。这里使用的是rsa。
2、密钥中有一个注释字段,用-C来指定所指定的注释,可以方便用户标识这个密钥,指出密钥的用途或其他有用的信息,所以在这里输入自己的邮箱或者其他都行。

输入完毕后程序同时要求输入一个密语字符串(passphrase), 空表示没有密语, 3次回车即可完成当前步骤,此时c盘>用户>自己的用户名>.ssh目录下已经生成好了。

注:这里强调说明一下,如果键入密语后后续使用git命令pull和push等操作时便会让你输入之前键入的密语,这里我嫌麻烦就在键入密语的时候直接回车,表示不需要密语

将命令复制到gitlab账号上

登录gitlab。点击头像打开settings -> SSH keys 把生成好的公钥id_rsa.pub里面的内容放进key输入框中,再为当前的key起一个title来区分每个key。点击Add Key即可。

克隆项目到本地工作空间

使用如下命令即可克隆远程仓库的代码到本地:

git clone git@154.118.232.126:dev/web/mydemo.git

提交代码

vscode有内置的git插件,所以无需安装,当然你也可以使用其他git插件辅助

图片描述

因为从远程down下来的是master下的代码,需要先切换到你要开发的分支,也可以新创建dev分支,然后切换到dev分支:

$ git checkout -b dev
Switched to a new branch 'dev'

同样使用vscode的话点击左下角标注的地方即可切换分支,你所有的改动都会在侧边栏显示,点击后可以看到你的具体改动的地方。这一步相当于git status

然后你可以点击加号将代码 add 到暂存区。

暂存区: .git目录下的index文件, 暂存区会记录 git add 添加文件的相关信息(文件名、大小、timestamp...),不保存文件实体, 通过id指向每个文件实体。可以使用git status查看暂存区的状态。暂存区标记了你当前工作区中,哪些内容是被git管理的

然后点击 将文件添加到本地仓库同时在输入框中输入描述信息,这一步相当于git commit -m 'msg'。最后点击左下角你分支名称旁边的按钮,它会实时记录状态,这一步相当于git push

拉去远程仓库代码并 merge 到自己的分支

首先切换到master分支:点击左下角分支名称。然后点击项目名称旁边的三个小白点(...)拉取项目,这里区别于同步,当然,此时也可以在控制台输入 git pull 拉取远程仓库最新的代码。

最后切换到自己的分支

输入git merge master即可将远程仓库的最新代码同步到自己的分支。

以上就是vscode中使用git的简单操作,而对于不想使用github desktop的同学如果也在使用vscode操作是一样的


kkxiaoa
30 声望3 粉丝

是分享将陌生的甲乙暖成知己