在实习的公司使用过git进行版本控制,对于git进行学习。
git和svn的区别
Git是一种近来很流行的分布式版本控制系统(或称源代码管理系统),和传统的SVN、TFVC(TFS Version Control)这样的系统而言,最大的特点就是分布式。所谓分布式是相对于SVN这种集中式而言的,SVN或者TFVC都需要有一个中心服务器保存着源代码,所有开发者都使用客户端和这个服务器交互。
Git是Linux内核之父为了管理繁杂的Linux内核而开发的开源系统,随着GitHub这样的开源代码托管系统大热,而为很多人知晓使用。
Git的强大潜力并非真正在于分布式,而是在于其对源代码存储的机制(使用快照),由于这样的机制存在,你可以大量频繁的使用分支来工作,通过分支来隔离功能开发的过程。
git 分布式的版本控制,内部采用基于内存存储的文件系统。相对比较简单,主要是建立分支,合并分支,下拉和上传分支
Git参考文档:
http://gitref.org/zh/inspect/
git原理(这个很好):
http://www.nowamagic.net/academy/detail/48160210
工作过程:
在工作目录中修改某些文件。
add:对修改后的文件进行快照,然后保存到暂存区域。
commit:提交更新,将保存在暂存区域的文件快照永久转储到 Git 目录中。
git操作:
git init 完成初始化,在工作目录下生成.git目录
git status:git状态
git clone:
git add :
git -rm --cache ‘’ :删除暂存区
git commit -m “注释” :提交
git reset --hard 版本号 :回退,撤销提交的
git branch -a 分支名:查看分支
git branch -b 分支名:新建
git checkout -b 分支名:新建并切换
git push:
git pull:
git merge:
git fetch :
git init 完成初始化,在工作目录下生成.git目录
git commit -m “注释” :提交
回滚/撤销:
git reset --hard ‘版本号’:不会保留修改记录
git reset --soft '版本号':保留修改记录
git reflog :可以查操作和版本号
git reset HEAD^ :撤销上次修改的
暂存区的撤销:
git rm --cache ‘文件’
删除文件:
git rm ‘文件’
查看状态:
git status:查看状态
git log:查看操作
git reflog:查看操作和版本号
分支:
git branch -a :查看本地分支
git branch -r :查看远程分支
git branch -d:删除分支
git branch 分支:新建分支
git checkout 分支:切换
git checkout -b :新建并切换
和远程分支
git clone “地址[可以是网址或者本地地址,支持http https ftp ssh file git]”
git fetch <远程主机>[分支] :取回远程主机分支上的更新
git merge 远程[分支] 本分支与远程分支合并 :出现冲突会显示
<<<当前本分支
.....
===
...
>>>远程分支 这种情况下,可以删除<<<==<<<,然后git add git commit 即可
git pull 远程[分支]:本地分支 :取回更新being合并
git push 远程 本地分支[:远程分支] 注意:要保证本地分支是最新的,
git remote :查看远程主机名
git笔记: