1、Git
分布式版本控制工具,多人开发,每个人都是一个完整的代码版本库 本地版本控制 集中版本控制
1.1 Git工作原理
四个工作区域:
- Working Directory,本地工作目录
- Stage(Index),暂存区,用于临时存放改动,实质上是一个文件,保存即将要提交到本地仓库的列表信息
- Git Directory,本地仓库
- Remote Directory,远程仓库
1.2 Git文件状态
- Untracked,未跟踪状态,在文件夹中但未加入到git仓库,使用git add添加到暂存区,变为Staged状态
- Staged,暂存状态,使用git commit可将修改同步到库中,这时库中文件和文件夹中文件一致,文件变为Unmodify状态,使用git reset HEAD filename取消暂存变为Modify状态
- Unmodify,文件已经入库,未修改
- Modify,文件已修改
1.3 忽略文件
.gitignore ,配置忽略提交的文件
*.txt
!bin.txt
build/
/build
1.4 Git分支
master 主分支,用来发布新版本,应该非常稳定,一般情况下不允许在上面工作,一般采用新建分支来进行工作,完成后,分支代码稳定可以合并到主分支master上。- 如果一个文件在合并的时候被不同的人修改了则会发生了冲突,解决的方法是修改冲突后的文件重新提交,选择保留其中一个人的修改。
2、SVN
集中式版本控制系统,版本库集中在中央服务器
3、Git常用命令
命令 | 作用 |
---|
git config -list | 列出所有配置 | git config --system --list | 列出所有系统级配置 | git config --global --list | 列出所有全局配置 | which git | 查看安装目录 | git config user.name | 查看用户名,新安装必须配置账号邮箱 | git config user.name “name” | 设置用户名 | git config user.email | 查看邮箱 | git config user.email “xxxxxx@google.com” | 配置邮箱 | git init | 初始化空的git仓库 | git clone url | 克隆远程仓库到本地 | git status | 查看当前git文件状态 | git add . | 将所有未跟踪的文件提交到暂存区 | git commit -m ‘第一次提交’ | m:message,将暂存区的代码提交到本地仓库 | ssh-keygen -t file | 生成ssh密钥 | git remote add <名称> <地址> | 配置一个远程仓库 | git branch | 列出所有本地分支 | git branch -r | 列出所有远程分支 | git branch <名称> | 新建一个分支,但依然停留在当前分支 | git checkout -b <名称> | 新建一个分支,并切换到新分支 | git merge branch | 合并指定分支到当前分支 | git branch -d <名称> | 删除分支 | git push origin --delete<名称>,git branch -dr remote/branch | 删除远程分支 |
|