1.版本控制
- List item
- 实现跨区多人协同开发
- 追踪和记载一个或多个文件的历史记录
- 组织和保护你的源代码和文档
- 统计工作量
- 并行开发,提高开发效率
- 追踪记录整个软件的开发过程
- 减轻开发人员的负担,节省时间,同时降低人为错误
版本控制工具
- GIT (分布式版本控制)
- SVN (集中版本控制)
- CVS
- VSS
- TFS
2.GIT必要配置
- git config --system --list
- git config --global user.name “liyuan”
- git config --global user.user.email “1987151116@qq.com”
3.GIT核心
GIT本地有三个工作区域,工作目录,暂存区,资源库,远程git仓库;
(1)Working Directory:工作区,平时存放,书写项目代码的地方;
(2)Index/Stage:暂存区,用于临时存放改动,实际上只是一个文件,保存即将提交到文件列表的信息;
(3)Repository:仓库区(本地仓库),按群存放数据的位置,其中有我们所提交到版本的数据,其中HEAD指向最新放入仓库的版本;
(4)Remote:远程仓库,托管代码的服务器
4.GIT基本操作
文件四种状态:
- Untracked:未跟踪,可通过git add 变为Staged状态;
- Unmodified:文件已入库,未修改,即版本库中的文件快照内容和文件夹中的完全一致,若该文件被修改,则会变成Modified,若使用git rm 移除版本库,则成为Untracked文件。
- Modified:该文件已修改,通过git add 可进入暂缓区Staged,通过git checkout可返回到Unmodified状态的版本。
- Staged:暂存状态,执行git commit 将修改同步到本地库中,文件会变为Unmodfied状态,执行git reset HEAD filename 取消暂存,文件改为Modified状态。
# 查看当前git仓库状态
git status;
git add .;
git commit -m "xx";
git push origin master;
git checkout;
# 将某文件移除暂存区
git reset HEAD filename;
# .gitignore
*.txt #忽略所有以.txt结尾的文件
!lib.txt # 但lib.txt除外
/temp #仅忽略项目根目录下的TODO文件,但不包括其他目录temp
build/ # 忽略build/目录下所有文件
doc/*.txt # 忽略doc该层级下所有以.txt结尾的文件
5.配置连接码云
# 1.进入 C:\Users\Administrator\.ssh 目录,生成公钥
ssh-keygen
# 2.将该公钥信息添加至码云仓库中
# git分支查看
git branch -r
# 新建分支
git branch dev
# 新建并切换到某一分支
git checkout -b [branch]
# 合并指定分支到当前分支
git merge [branch]
# 删除分支
git branch -d [branch-name]
# 删除远程分支
git push origin --delete [branch -name]
git branch -dr [remote/branch]