SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候都要先要从中央服务器获取最新版本,然后将自己做完的活推送到中央服务器,集中式版本控制系统必须联网才能操作。
Git是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作不需要联网,协作时只需要将对方的修改推送一下就可以互相看到对方修改。
Git基础:
查看操作:
git status 是一个用于查看git仓库当前状态的命令,可以显示未暂存的修改和未跟踪的文件
注:例如git add之后使用status查看添加的文件有什么
git diff 查看比较被git管理的文件在工作区、暂存区和版本库之间的差异
四种场景:工作区和暂存区、工作区和版本库、暂存区和版本库、不同版本之间
四大基础操作:
add :将该文件的修改添加到暂存区,可以告诉 Git 哪些文件的修改应该包含在下一次提交 (commit)中。并可以添加一个或多个文件到暂存区。
commit:将暂存区的代码提交到本地仓库
pull:将远程仓库拉取数据到本地仓库,与远程仓库匹配
先commit还是先pull说法不一,即先更新再修改还是先修改再更新
push:将本地仓库代码push到远程分支(远程仓库)
因为本地不commit,修改的记录可能会丢失。而有些修改当前不需要提交到服务器,可以自行原则什么时候同步再push到服务器。