git使用总结
git和svn的区别git:版本控制系统,内容管理系统,工作管理系统。和svn的区别:1.git是分布式的,svn不是:这是git和svn、cvs非分布式版本控制系统最大的区别。2.git把内容按 元数据 方式存储,cvs是按文件:所有资源控制系统都是把文件的元信息隐藏在类似.svn,.cvs等文件夹里。3.git分支和svn分支:在svn中分支就是版本库中的另外的目录。4...
git和svn的区别
git:版本控制系统,内容管理系统,工作管理系统。
和svn的区别:
1.git是分布式的,svn不是:这是git和svn、cvs非分布式版本控制系统最大的区别。
2.git把内容按 元数据 方式存储,cvs是按文件:所有资源控制系统都是把文件的元信息隐藏在类似.svn,.cvs等文件夹里。
3.git分支和svn分支:在svn中分支就是版本库中的另外的目录。
4.git没有一个全局的版本号,svn有
5.git完整性优于svn,
git内容存储使用SHA-1哈希算法。能确保代码内容的完整性。
6.git文件目录更加赶紧整洁,易于理解。
工作流程:
克隆 Git 资源作为工作目录。
在克隆的资源上添加或修改文件。
如果其他人修改了,你可以更新资 源。
在提交前查看修改。
提交修改。
在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。
图片
基本操作
git init 在目录中创建git仓库。
git init repos 在目录中创建repos仓库git clone [url]克隆一个git仓库到本地
git add *.c 将该目录下全部C文件全部添加到缓存
git status命令用于查看项目的当前状态
(-s )git diff 查看执行git status的结果的详细信息
–cached 已缓存的改动
HEAD已缓存和未缓存的所有改动
–status显示摘要而非整个diffgit commit将缓存区内容添加到仓库中。
git reset HEAD
用于取消已缓存的内容git rm 从以跟踪文件清单中移除
-f
强制选项
–cached
git mv
用于移动或重命名一个文件、目录、软连接
git branch branchname
git checkout branchname
git merge
git分支管理
创建分支命令
git branch(branchname)
切换分支
git checkout (branchname)
合并分支
git checkout (branchname)
合并分之命令
git merge
分支管理
列出分支基本命令
$git branch
*master
此处意思就是有一个master分支,并且该分支是当前分支。
(在第一次执行git init时候,默认情况下创建“master”分支)
删除分支
git branch -d (branchname)
分支合并
将某一分支(已修改)合并到主分支。
git merge
合并冲突
合并除了文件添加、移除的操作,git还会合并修改
查看提交历史
git提交若干次后,可通过
git log //查看提交历史
–oneline//查看历史记录的简介版本
–graph查看历史记录中什么时候出现分支,合并(选项可复用,开启拓扑图选项)
–reverse 逆向显示所有日志
–author 查找指定用户的提交日志
–since和before 制定日期记录
(同–util和–after)
git标签
作用相当于写代码要求写版本号创建日期和作者
创建一个带注解的标签
$ git tag -a v1.0
-a要求加上
追加标签
git tag -a v版本号 序列号
序列号表示git修改历史操作的序列号
执行
git log –decorate可以查看标签git 查看所有标签
指定标签信息命令:
git tag -a <tagname> -m "runoob.com标签"
PGP签名标签命令:
git tag -s <tagname> -m "runoob.com标签"
这一处没有用过复制的。
后面的章节都是在远程创建仓库的东西,可以使用github做练习
或者在私人服务器上搭建一个私有仓库使用。有机会在学习吧。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)