目录
git概述
创建远程仓库
远程仓库建立在远程平台(代码托管平台)之上(创建远程平台有github、gitlib)
远程仓库好处:
1、版本回溯:
在本地操作台上写代码,然后上传到远程仓库上去(可设置可见或不可见)。 远程仓库上可以存备份,可以进行回溯,这样在本地操作台上找之前的版本的时候就可以通过远程仓库回溯之前的版本
2、项目共同开发:分支管理
主支:
分支:(由很多人共同完成项目,每个人负责一部分,写完之后合并为完整项目)
git区域划分
下载git之后会把本地操作分为四个区域(远程仓库肯定在服务器上)
git提交过程:
安装git(D盘)
右击:显示更多,就会出现git bush(git GUI是图形化管理工具,使用较少)
桌面新建一个名为“仓库”的文件夹,进去右击,git bush 显示小黑窗,命令git init创建本地仓库
在本地工作群创建一个txt文件(里面随便写点内容),再次打开git Gui图形化工具
此时文件在工作区里,然后要将其提交到暂存区(打开git push小黑窗提交)(提交命令:git add xxx.txt)然后提交到本地仓库(提交命令:git commit -m"备注:这是我的第一次提交")
如果工作区有多个文件,可以使用 git add . 进行提交所有(常用)
提交到本地仓库之后,输入命令 git push 就能提交到远程仓库上去。
一般git push之前(如果多人同时提交肯定有冲突),所以在push之前先进行git pull操作,先将远程数据库和本地数据库的数据进行拉取同步,之后再git push提交。
远程仓库
在gitee上新建远程仓库
新建完远程仓库之后,要想跟在本地和远程仓库进行联系 :
1、首先在gitee设置里面,添加(个人本地)ssh公钥
2、本地公钥的获取:在git bush 里面输入命令:ssh-keygen -t rsa # 生成sshkey,然后按几次回车,然后去对应路径下找到公钥,用编辑器打开,将其复制到gitee里面去,公钥添加完成!!
右击 git bush 然后输入命令:git clone 仓库的https/ssh;
此时就会出现由远程仓库克隆而来的本地仓库,这样远程仓库就被拉取下来!!
此时就可以在本地仓库的工作区进行操作和提交,然后push提交到远程仓库上去。
最终可在远程仓库看到提交内容。
传输协议流程小解析:
ssh协议是文件传输协议,用于传输大文件,他是保密的,主要应用了公钥私钥进行保密操作
(ssh协议只是相对保密,不是绝对保密)
绝对保密的协议是https协议(面试必面)
版本回退:
git log 查看刚刚的提交日志
git reset HEAD^ 版本回退:几个^就是往前回退几个版本(慎用)(注意:版本回退不是工作区回退,而是仓库的版本回退)
分支管理:
master(主分支):新版本发布
分支:小组成员进行功能开发
创建分支:
git checkout -b dev_zcz #创建并切换分支(此时工作台已进入dev_zcz分支)
然后在本分支上进行操作,git add . git commit -m"我自己的分支的第一次提交" 此时无需git pull 直接 git push origin "zcz" 提交到自己的分支上
此时 gitee网页上已出现自己新建分支及其提交信息!!
合并分支:
先切换到master主分支:git checkout master
然后 git pull 保持代码的同步性
然后 git merge dev_zcz 合并dev_zcz分支
合并完成!!
git push 提交到远程仓库
一般可以直接在网页(远程仓库)上进行分支合并,这样还便于解决分支冲突问题。
分支冲突:
如果分支内容和主分支内容在同一个文件里有冲突,那就会出现分支冲突的错误。
并会出现冲突报错信息:
如何解决:线下讨论,用谁的版本。修改完冲突报错信息,重新提交即可
git实战
开发组长:
(假如你是开发组长那就直接新建仓库,邀请用户,进行开发)
开发成员:
(假如你是开发小组的一个成员,你的小组长已经创建好了仓库)
git clone 拉取到本地
git checkout -b dev_zcz 创建分支
# 进行操作
git add .
git commit -m"zcz提交"
git pull 拉取,同步代码
git push origin zcz 提交到远程仓库的分支
分支合并(可以在远程仓库页面上)
如果有分支冲突:
当在Git中进行合并请求时,如果源分支(dev_zcz)与目标分支(通常是主分支master)之间存在冲突,Git将无法自动合并这些更改。这通常是因为两个分支修改了相同的代码行或文件。
1、回到主分支(目标分支),git pull 拉取最新代码
2、合并个人分支(源分支) git merge dev_zcz
3、如果Git报告冲突,它将列出有冲突的文件。此时我们手动编辑、解决冲突:Git会在冲突的地方添加特殊的标记,如、=======和>>>>>>>。你需要删除这些标记,并决定保留哪些更改。
4、来到个人分支(源分支)git checkout -b dev_zcz 标记冲突已解决,并进行提交 git add . git commit -m"改完冲突后提交"
将个人分支push到远程仓库
5、重新请求提交到主分支。
个人项目提交:
(假如你没有进行小组的项目开发,只是想把自己的代码放到托管平台上)
新建远程仓库,然后:
git init 新建本地仓库
git add .
git commit -m"提交记录"
git remote add origin https... #添加一个新的远程仓库配置到本地仓库
git push -u origin "master" #将本地仓库推送到远程仓库