回想起刚上班的前一天,我还在忧心忡忡,害怕自己不会用git,连代码也拉不下来,今天写一下我在工作中使用到的git的一些流程,帮助一下和我一样迷茫的人类。
准备工作
首先,你需要一个github/gitlab/gitee这样的代码托管平台账号,一般来说公司会给你开好账号,你登录进去即可,然后公司将项目放到"你的项目"中。
拉取项目
点进你要拉取的项目,点击clone(克隆),看你们公司是用哪种方式,我们的是HTTP,现在将它复制下来。如果是SSH的话需要配置一下,也不难,网上搜一下就好。
OK,现在找一个你存放公司项目的文件夹,点击路径那里,输入cmd(一种快捷方式吧,直接进到那个路径里)
现在输入命令
git clone xxx[刚刚复制的地址]
现在项目就成功地克隆到你的本地了!
开始开发
在开发之前,请务必创建自己的分支,master分支是最稳定的版本,但是开发不是基于这个,我们会基于dev或者master_all这样的代码新建分支,开发完以后合上去。
一般都会有公司自己的分支名规范,比如需求号_日期 这样的,因为不能拿公司项目造次,我用gitee示范吧。
新建分支
我的话我会直接到gitee、gitlab、github上创建,
(如果这一步失败可能是没有给你开权限)
拉取最新分支
那创建好以后,我们本地的仓库里肯定是没有这个分支的,因为这是远程的,我们需要拉取一下,进到vscode中,我们打开里面的终端(快捷键: Ctrl+`),输入
git pull
(git pull和git fetch的区别:git pull=git fetch+git merge 会合并)
就可以将最新的分支拉过来了。
那怎么切换到我们的分支上去
①比较简单,直接使用vscode的git功能,点击,然后切换
②使用git命令
git checkout <分支名>
OK,现在可以愉快地开始开发了。
突如其来的其他需求!
假如当我们在a分支上开发的时候,突然需要我们切换到b分支上去写需求,如果我们直接切换分支
意思是说你本地的改动会被直接覆盖掉!下面提示我们可以commit或者stash,但是我们没有开发完,不能commit,所以只能stash啦,那么stash是干嘛的呢?他翻译过来就是暂存的意思,后面要用的时候弹出来就好
同样可以使用vscode的工具。
因为还没有commit,所以要选包括未追踪的,这里取个名字
现在这里就空了
要使用时,只有一个就latest,很多的话就第二个
现在改动又回来啦
这个是我以前不怎么知道但是发现工作中很常用的!
准备提交
在开发完以后,我们会逐个检查改动,因为有些文件不需要提交,直接add .不是很好,因此一个一个点
完了commit了,但是在push之前,我们最好git pull一下,拉取最新的代码,因为不确定你现在的代码是不是最新的版本。因为别人可能已经开发出新一版的代码并提交到远程仓库,如果你不pull直接推的话,可能会产生冲突。先pull再push不会覆盖新写的代码,有两种情况,1是代码有冲突,那就跟别的开发者协商保留哪些代码,然后再提交,2是没有冲突,自己的版本是最新的版本,不会被git覆盖。
最后
git push
(如果这一步失败可能是因为没有权限)
合并请求
这个的话,直接去托管平台那里,点击
注意源分支和目标分支, 你开发的分支就是源分支,基于哪个就合到哪里去。然后等待合并就好。
大概就是这样的基本流程啦,希望对你们有帮助 ღ( ´・ᴗ・` )比心