一.如果没有版本控制?
1.备份多个版本,浪费空间和时间;
2.难于恢复到以前正确版本;
3.容易引发BUG;
4.解决代码冲突困难;
5.代码管理混乱;
6.难于追溯问题代码的修改人和修改时间;
7.项目版本发布困难;
二.版本控制工具:
CVS-开启版本控制之门
SVN-集中式版本控制之王者
GIT-分布式版本控制之伟大作品
三.为什么选用GIT?
1.分布式,离线操作;
2.每日工作备份;
3.异地协同工作;
4.现场版本控制;
5.避免引入辅助目录;
6.可以吃后悔药;
7.工作进度随时保存;
8.快;
四.GIT工作模型:
1.集中式工作模型;
2.社交网络式工作模型;
五.使用GIT步骤如下(服务器端):(这是学习时的例子,故我的服务器在本机上)
1.下载Git并安装上;
2.在同级目录下创建Shared repository文件夹(just for example),在他下面创建子文件夹git:
D:\Program Files\Git 安装位置
D:\Program Files\repository\git 共享位置
3.点击桌面Git Bash进入共享目录:(Linux TAB键自动补全)
cd /d/Program Files/repository/git 回车
4.建立仓库;
git init --bare shared.git (bare adj.光秃秃的;(房间、柜子等)空的;赤裸的;刚好够的)
5.创建后有一些目录,如下:
echo "welcome to git" > index.jsp 新建文件index.jsp并写入内容
cat index.jsp 查看内容
这样服务器共享版本库已经搭建好,下面来看一下刚到公司的员工应该怎么做:
第一步:建立我的工作目录,复制仓库到本地
D:\My WorkSpace\user01
在文件夹内单机右键 Git Bash Here 输入::
git clone /f/software/repository/git/shared.git/ . (注意有个点,表明当前目录)
前面一个是服务器的共享版本库,先弄过来生成.git隐藏文件
(如果单击没效果,就只有点桌面Git Bash了,git clone 服务器的地址 自己工作区 )
第二步:设置个人信息
git config user.name "zhangweihui"
git config user.email "zhangweihui87@foxmail.com"
验证一下:ls -a
cd .git
ls
cat config 可以看到我的信息
第三步:忽略无需版本控制的文档,例如我想把项目目录下所有.txt的文档忽略,可以进行如下操作
echo "*.txt" > .gitignore
第三步:新建一个文件
echo "I am number 1;" > index.jsp
查看一下: cat index.jsp
第四步:提交文件
git add index.jsp
git commit -m "谁修改的代码,修改了什么" index.jsp
第五步:把自己的仓库提交到公共服务器
git push origin master
origin : 代表服务器的地址,不用这样写/d/Program Files/repository/git /shared.git
master : 代表一个分支
=====================其他人操作===========================
第一步:进入工作目录复制仓库到本地git clone /f/software/repository/git/shared.git/ .(第一次才用)
第二步:git pull
第三步: 修改index.jsp文件
vim index.jsp
:wq 保存退出
第四步:提交文件
git add index.jsp
git commit -m "User2 add the file!"
第五步:把自己的仓库提交到公共服务器
git push origin master