git基础入门,连接仓库、合并代码、同步分支、解决冲突

2,836 阅读4分钟

一、创建项目

全局安装vue的脚手架,vue项目名支持驼峰 如:firstProject。

详情点击Vue官方文档

Vue:npm install --global vue@cli

Vue: vue create <project name>

全局安装react,笔者react不算很熟,可能也有其他的安装包。

react项目不支持驼峰, 如: firstproject, firstProject驼峰命名会导致项目创建失败。

react: npm install -g create-react-app

react: create-react-app <project name>

详情点击React官方教程

不过react的官方教程有点难懂, 纯新人入门可以看菜鸟教程

二、创建代码仓库

代码仓库可以根据自己的爱好选择github码云,或者其他的代码平台,日常工作没有很大的区别,下面以码云举例,不用github是因为网有些卡。

1、登录平台: 图片: 略
2、创建仓库: 码云在左下角找到仓库并点击“+” 创建新的仓库,之后根据网页文字引导完成仓库的创建。

image.png

3、生成ssh公钥

本地打开终端,推荐下载git终端,输入命令:

生成公钥:

ssh-keygen -t rsa -C "秘钥名称"

查看公钥:

cat ~/.ssh/id_rsa.pub

输入上述命令后可以看到如下图一串常常的公钥

image.png

4、绑定代码平台

这一步的作用是建立本地与代码仓库的桥梁, 告诉代码库自己不是外人。

进到代码库点击头像->设置(setting)->ssh公钥(SSH and GPG keys),英文部分是github的路径。

界面如下图, 标题看你心情填入, 笔者一般填入company或laptop来标明是公司或者自己的笔记本电脑。

image.png

三、本地代码首次推送到代码库

1、初始化项目

进入前面新建好的项目文件夹,使用命令git init 初始化项目

cd <project name>

git init

这一步相当于在本地创建了一个代码库。执行完上述命令如图。

image.png

下一步就是在项目中添加代码仓库地址,也可以称之为链接代码仓库

git remote add origin git@gitee.com:ruoyuonline/c**r.git

命令中的 origin 是给仓库起的本地昵称, 后面会用到, 一般默认会origin, 可修改。

git add .

git commit -m '初始化项目'

git push -u origin master

首次将项目推入到代码仓库时,命令如上, -u 参数指定默认推送到的分支, 之后使用 git push 默认推送到master分支上。 也可以使用git push origin <branch name>推送到制定分支。

四、 同步分支及冲突解决

1、说明

同步分支主要是用于多人合作开发, 单人开发的情况下, 也可以参考使用。

首先打开云平台,进入到项目仓库,可以在左上角看到默认的master分支, 可以之后可以通过下拉菜单管理分支。

image.png

多人开发时,建议创建dev临时分支用于开发, 基于dev分支下面的分支分配给各个开发人员使用

image.png

2、 本地同步分支

经过多次实验, 暂时没找到本地一次拉取分支的办法

git checkout -b user1 origin/user1

该命令是拉取origin的user1分支到本地的user1分支, 本地的user1分支可以另命名。

多个分支, 就多执行几次, 切换对应的命名即可。

不小心创建了错误的本地分支执行下面的命令删除

git branch -d <branch name>

3、代码合并

作为小组的负责人,合并代码有两种方式, 一种是在本地创建临时分支, 拉取远程仓库的各个开发人员的分支后进行合并。

git checkout -b temp origin/user1 // 此时会默认切换到temp分支

git pull origin user1

git checkout dev

git merge temp

首次合并需要执行第一条命令, 然后拉取远程分支, 切换到dev开发分支并合并代码。

git status

上述命令可以查看本地合并的变化, 绿色代表新增无冲突, 红色代码删除或冲突文件。

** 特别说明: 如果产生冲突, 命令行也会有提示需要你解决冲突。

下图中的master 会切换成 master | MERGEING **

image.png

如果出现both modifed的字样, 代表该文件与现有文件的代码冲突并无法直接合并,需要手动合并。

这是可以借助vscode软件打开冲突文件, 自行决定代码合并的方式

image.png

4、解决冲突后上传

在上述操作解决完代码冲突后, 可以执行以下命令

git status

查看是否还存在代码冲突的文件, modify修改, delete删除类型的可以视情况忽略。

git add .

git commit -m '合并冲突'

git push origin dev

5、结尾

以上步骤基本可以满足日常的开发需求,在完成一个阶段的开发后,可以在代码库以版本号创建一个分支,将当前代码推入到对应的版本分支当中, 完成版本管理的最后一步。