一、为什么进行版本控制?
答: 在公司我们开发都是多人一起开发,利用版本控制可以让我们一起去开发,自己开发完毕,更新下本地代码,解决冲突,提交到远程仓库。
1>备份:可以帮助我们对开发的代码进行备份
2>代码还原:版本控制提供不同版本,我们每提交一次,就出现一个版本,如果我们想回退,就可以回退到之前的版本。比如git命令版本回退,git reset --hard head^,如果是回退到指定版本,就需要指定版本号,我们可以通过git log 查看commit后面的版本号,输入git reset --hard <commit id>
3>权限控制:给每个人分配权限
4>查看问题:每个开发人员做了哪些操作都会版本记录,甚至什么时间做了什么操作都会记录下来
二、git常见使用总结
1.git 详细图分析
本地工作区----》暂存区(.git的index)---》本地仓库(.git的object)---》远程仓库
远程仓库:github(付费,国外),gitlab(付费,国外,可以建私服),gitee(免费,国内,中文样式)
开发流程:
1、首先远程拉去代码(git clone 远程库地址)
2、一般远程仓库有是三个分支,分别为master(正式上线)、dev(开发分支,也是我们提交分支)、test(测试分支)
3、在本地创建一个自己分支,比如wangzehua,因为我们拉取代码后,本地也有dev分支,所以更新本地dev分支代码
4、将dev分支合并到我们自己的分支wangzehua,
5、开发本地分支代码,合并到本地测试分支test,没问题再提交到远程测试分支test
6、将本地分支提交到远程自己的分支wangzehua,作为备份
7、然后切换到本地dev分支,更新下获取最新本地分支代码
8、将本地自己分支wangzehu合并到本地dev分支,解决冲突,然后提交到远程开发分支dev
2.git 常见命令
1.git add .
这里空一格,再写.,表示提交本地所有文件,这个用得多,这个是提交到暂存区,我们可以通过git status查看暂存区信息
2.git add 文件名
提交指定文件到暂存区
3.git commit -m “信息说明”
提交代码到本地仓库
4.git push -u origin “分支名称”
提交分支代码到远程仓库
5.git init
初始化仓库,也就是常见本地版本库,执行完这个命令后我们会发现出现.git文件,表示将当前目录交给版本库管理
6.git remote add origin "远程仓库地址"
将本地仓库和远程仓库关联起来
7.git status
查看暂存区信息,可以看哪些add还没commit
8.git log
查看版本,就是可以看到所有的所有详细信息,最上面的就是最新版本库,包括日志操作者、操作时间
9.git log --pretty=oneline
查看版本,不过只会显示版本号和对应的信息说明
10.git reset --hard head
回退当前版本,其实啥都没修改,也就相当于查看当前版本号
11.git reset --hard head^
回退到上一个版本,在head后添加^^表示回退到上上版本,依次类推
12.git reset -hard 版本号
回退到指定版本,我们可以通过git log 查询所有版本号,然后找到我们想要回退版本
13.git clone 远程仓库地址
将远程仓库项目拉去到本地
14.git branch
查看所有分支以及当前分支,标记为绿色的就是当前所在分支
15.git checkout 分支名称
切换到指定分支
16.git branch -d 分支名称
删除某个分支
17.git checkout -b 分支名称
创建某个分支并切换到该分支
3.推送项目到远程仓库流程
1.首先注册gitee账号
2.创建一个远程仓库
3.右击--》git bash
4.输入 :git config --global user.name "自定义名称"
输入: git config --global user.email "自定义邮箱"
5.输入:git init
初始化仓库,将该目录交给git管理
6.git remote add origin 远程仓库地址
关联远程仓库和本地仓库
7.git push -u origin 分支名称
二.SVN使用总结
1.svn和git的区别
本地工作区---》svn远程仓库----》第三方远程仓库(github,gitlab,gitee)
从这里我们可以看到,svn只有一个远程仓库,多人开发时公用一个仓库,而git是每个人都有一个本地仓库,并且svn需要联网,git则不需要。
2.使用svn可视化界面拉去项目
1.新建一个目录
2.右击选中svn checkout
3.在URL of repository中输入远程svn的地址
4.选中拉去到本地的指定目录
5.然后点击ok,输入账号和密码,进行拉去
6.拉去成功后本地会出现一个.svn
3.使用svn上传代码流程
1.我们写好开发代码
2.到项目目录下,右击鼠标,选中svn update,将svn中最新代码更新到本地
3.然后右击鼠标,选中svn commit,出现一个界面
4.上面message就是我们的信息说明,就类似git commit -m “信息说明”
5.下面的就是有冲突文件,我们点进去一个个看下有没有问题,有问题就修改下,最后统一提交就可以