1.下载安装git
官网下载git软件: https://git-scm.com/downloads
可默认选项安装软件,自定义安装路径时注意路径不能还有中文和空格
开始菜单>git>git bash,“Your Name”和“email@example.com”分别是自己在gitlab上注册的用户名和邮箱:
git config --global user.name "Your name"
git congif --global user.email "email@example.com"
2.生成SSH keys
SSH keys相当于是本地和远程端传输数据的一个身份凭证。
1)在bash窗口输入(若第一次生成)
ssh-keygen -t rsa -C "your.email@example.com" -b 4096
会弹出让你输入秘钥保存的地址,有默认地址,回车即可。若不想设置密码,一直回车即可生成秘钥。会发现默认地址下多了一个.ssh文件夹,该文件夹下保存着SSH keys。
2)生成秘钥后,输入
cat ~/.ssh/id_rsa.pub | clip
id_rsa.pub文件内的秘钥复制到剪切板上。
3)在gitlab网页上
用户>settings>SSH Keys,复制填写到密钥的区域,点击add key按钮确认
3.本地新建项目并上传
(一)初始提交项目到gitlab
进入要提交的目录,右键菜单选择”git bash”
1)初始化一个新本地仓库
git init
2)关联远程仓库
git remote add origin 项目在gitlab仓库上的地址(格式:http://{ip}:{port}/项目路径.git)
- 把要提交的项目复制到这个目录中并加到本地仓库暂存区
git add .
(注意这里有一个英文句号,表示当前目录所有文件。也可以是具体某个文件的名称)
- 提交到本地仓库
git commit -m ‘提交时附带的注释信息’
5)提交到远程仓库
git push
(二)第一次获取项目
1)先克隆
git clone http://{ip}:{port}/项目路径.git
git是多分支的,现在默认是master分支,开发的时候应该用自己的分支去开发
2)创建dev分支
git branch dev
切换分支
git checkout dev
上面两条命令也可以合成一条:
git checkout –b dev
3)列出项目所有分支
git branch
当前所在分支的名称前面会有一个”*”号
(三)项目切换到dev分支后就可以进行开发,对项目进行了改动后,操作如下:
- 进入克隆目录test
cd test
- 提交修改和新增的文件到暂存区
git add . (注意这里有一个英文句号,表示当前目录所有文件。也可以是具体某个文件的名称)
3)提交上一步的文件到本地仓库
git commit -m ‘提交时的注释信息’
4)切换到master分支
git checkout master
5)我们在dev分支的工作成果合并到master分支
git merge dev
第4步合并成功后,master分支上就会有dev分支的最新内容了
6)提交到远程仓库
git push
第6步提交成功,自己的工作成果算是保存到远程仓库那里了,当别人从master分支获取代码的时候就会同步到自己的最新内容
但是项目由于是多人开发的,可能多个人会对同一个文件进行了修改,因此在进行第4步骤的时候,往往会显示冲突
(四)冲突
冲突产生有两种情况:
- 同步远程仓库某个分支的最新文件
- 在某个分支上提交文件
原因:
自己当前文件内容与远程仓库上的相同文件不一样,同时自己的文件不是最新版本
输入git status可以查看有哪些文件产生了冲突:
截图上告诉我们readme.txt文件有冲突,我们此时可以查看readme.txt文件
上面<<<<, =====, >>>>分别标出有冲突的内容,需要我们手动把冲突内容解决
解决后再次提交readme.txt