前几天在写代码的时候电脑突然坏掉,老大交代的任务没完成,非常痛恨自己用svn或者git保存代码,相信很多程序员遇到过,硬盘坏掉,存在硬盘中的代码丢失,无法找回的问题,svn和git可谓程序员界的福音,那么问题来了,什么是svn和git呢?
svn和git其实都是一种用来管理项目的控制版本工具,他们有很多好处,比如
1.防止代码丢失----可以把自己的代码上传到服务器上
2.适合多人开发----合并代码超级简单
3.能够进行版本回退
4.能解决冲突和bug
5.可以做分支
6.责任到人----可以查看写代码的日志
7.有权限的控制
接下来便叫大家如何使用svn以及git,
要学习svn和git,首先需要知道几条交单的LINUX命令
如下:
1.ls-----查看当前目录下所有的文件以及文件
2.cd-----切换目录
用法:cd 路径名
注意事项:只能切换到下一级目录,如果想切换到别的目录,必须跟完整的路径名
3.cd .. 回到上一级目录
cd .回到根目录
4.clear 清除画面
5.创建一个文件
touch 文件名
6.创建一个文件夹
mkdir 文件夹名
7.rm -r 路径 //删除一个文件
rmdir 文件名
接下来便可以使用命令操作svn和git
svn:(模拟:有一个项目经理,两个开发人员,------开发人员的工作大致一样,所以写了两个)
首先需要知道svn服务器地址,svn服务器有公司的运维或后台负责人配置项目经理需要问这些人员要地址,并且把初始的项目导出
1.项目经理初始化项目,并且把项目传递到服务器
>svn checkout 项目地址
输入t或者p t
输入电脑密码
输入账号密码
>提交框架到svn服务器
svn commit--- 如果有新创建的文件或者文件夹 需要使用svn add 命令;
svn add ----告诉svn服务器 我这里有新创建的文件
svn st 用来查看当前svn的状态
?代表服务器不知道你要干什么,
"svn st 查看了状态 --- 有?
svn add . 把snow下的所有全部添加svn中
svn commit -m "注释"
2.开发人员1
svn checkout + (项目经理给的地址) -------从服务器上导出文件
新建了一个文件(这个文件是新建的工程,不能放在别的工程里)
svn st 查看了当前状态
发现文件 .html 有问号
svn add 文件.html(不可以再次使用svn add .)
svn commit -m"注释"
3.开发人员2:
> 更新自己的项目让自己的项目跟服务器最新的版本保持一致
svn update 更新
5.如果没有创建新文件
不需要使用svn add
直接使用svn commit -m "注释"
6.svn log 可以查看日志
二----"svn 版本回退"
第一种情况:开发人员为提交的情况
svn revert 文件名 会退到上次更新的版本
第二种情况:开发人员已经提交的情况
可以使用svn update -r 版本号
三----"svn 冲突问题"
出现的原因:多人修改同一个文件
1.首先选择p
2.解决冲突---三种解决方式:保留其中一方的代码 或者都保留
3.为了避免冲突,醒目经理应该告诉组员 那些文件不可改动 ,
一个人在修该文件的时候,在他提交以前,其他人不要进行修
改,等他提交完毕之后,其他人更新了再更改
svn resolved (修改好的文件名)
svn commit
git (流程大概和svn一样,只不过git需要先缓存到本地,在推送到服务器上,另外命令也会有一点小差别,如下)
GIT"
1.项目经理在服务器初始化项目
2.从服务器导出项目
git clone 地址
git命令 操作的时候,当前目录下必须存在.git隐藏文件
git add * 添加文件到本地缓存区
git commit -m "注释" 把文件提交到本地仓库
git push 把文件推送到本地仓库
(空文件夹上传不上去)
项目开发当中 ,提交更改之前应该先更新
git pull
冲突问题: 跟svn一样
删除文件: git rm 一个文件名
以上即为命令行操作svn和git,当然windows和mac也有不同的软件,但只要学会了命令行操作svn和git,软件自然就不在话下啦!