版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统
集中化控制系统都有一个单一的集中管理的服务器,保存所有文件的修订版本,客户端通过这台服务器获取文件或提交更新.
很明显,中央服务器是个中心,一旦它出了问题就会影响整个系统.
中央服务器单点故障,如果服务器一挂,那么整个系统就挂了,无法工作
甚至,中央服务器磁盘故障,很可能导致数据丢失,丢失所有历史更改记录等重要信息.
客户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来。这么一来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像出来的本地仓库恢复。因为每一次的提取操作,实际上都是一次对代码仓库的完整备份
作者,大神 Linus Torvalds
优点:
git config –global
git config --global user.name "alan"
git config --global user.email alancheen06@gmail.com
git config --list
查看配置列表
git init
用来初始化项目
它会创建一个 .git
目录,它包含所有初始化git的所有文件
git clone url
git clone url name #重命名成name
接下去的命令跟
untracked===>staged
git add file
git add .
staged===>untracked
git reset HEAD file
git commit -m "init"
git commit -a -m "init"
git commit -am "init"
git branch branchname
PS:当init一个仓库时,master需要先commit一遍才能新建其他分支,否则会得到一个错误 fatal: Not a valid object name:'master'.
git checkout branchname
git checkout -b branchname
git branch -r -a -l
git branch -d banchname #删除本地分支
git branch --delete branchname #删除远程分支
git pull origin master
git push origin master
git log
git reflog
git reset
git stash/pop
git help add
….