Git是一款免费、开源的分布式版本控制系统(Version Control System,简称 VCS),用于敏捷高效地处理任何或小或大的项目。Git 和其他版本控制系统的主要差别在于,Git 只关心文件数据的整体是否发生变化,而大多数其他系统则只关心文件内容的具体差异。Git 并不保存这些前后变化的差异数据,而是把变化的文件作为快照后,创建索引指向最新的版本
一、工作流
在Git中文件会流转的三个工作区域里:工作目录,暂存区域,以及本地仓库(远程仓库)。在 Git 内文件只有三种状态:已修改(modified),已暂存(staged)和已提交(committed)。已修改表示修改了某个文件,但还没有暂存;已暂存表示把已修改的文件放在下次提交时要保存的清单中;已提交表示该文件已经被安全地保存在本地仓库。
二、基本命令
//master:默认为主干,origin:默认为远程仓库
//初始化repository
git init
//下载远程工程
git clone git@github.com:XXX/hello-world.git
//创建新分支
git branch <new-branch>
//切换分支
git checkout <branch>
//添加指定文件
git add <filename>
//添加所有文件
git add .
//下载远程仓库最新代码
git pull origin <branch>
//提交文件,并写明本次提交的描述
git commit -m 'commit message'
//上次分支到远程服务器
git push origin <branch>
//合并分支到master主干
git merge <branch>
三、Git图形界面化
有兴趣的同学可以使用SourceTree
- Tortoise Git – Windows平台下的开源Git图形界面
- GitX(L) – Mac OS X下的开源Git客户端
- SourceTree – Windows和Mac下的免费Git或Mecurial界面
- git-cola – 一款开源Git界面
- Tower – 我们公司为Mac用户所出的Git界面
四、参考资料
git的merge与rebase区别:http://blog.youkuaiyun.com/wh_19910525/article/details/7554489
git简易指南:http://www.bootcss.com/p/git-guide/
git图解:http://marklodato.github.io/visual-git-guide/index-zh-cn.html
Pro git:https://git-scm.com/book/en/v2