Git学习笔记
agul_
中科院计算技术研究所在读硕士,主要研究方向为知识图谱
展开
-
简陋的Git教程(也算是学习Git的个人总结吧)
覆盖了Git中很基础的一部分。命令行中输入的代码用深蓝色表示,输出的代码用棕色表示首先安装Git:$ sudo apt-get install git$ sudo apt-get install git-doc git-svn git-email git-gui gitk首先要设置好用户的姓名和邮箱(为保证提交时提交者和作者信息的正确性):$ git config --glob原创 2012-08-11 14:22:20 · 12337 阅读 · 3 评论 -
Git学习笔记(七) 恢复进度
删除本地多余的目录和文件$ git clean -nd查看哪些文件和目录会被删除$ git clean -fd真正开始强制删除多余的目录和文件保存和恢复工作进度$ git stash保存当前的工作进度,会分别对暂存区和工作区的状态进行保存$ git stash list显示进度列表$ git stash pop [--index] []如果不使用任何参数原创 2012-08-07 16:11:40 · 4122 阅读 · 0 评论 -
Git学习笔记(三) Git暂存区
查看工作区文件的改动$ git diff 工作区与提交任务(提交暂存区,stage)中相比的差异$ git diff HEAD 工作区和HEAD(当前工作分支)相比的差异$ git diff --cached (或--staged)提交暂存区(提交任务,stage)和版本库中文件的差异$ git status 显示状态 -s表示用精简方式 -b同时显示当前工作分支的名称其中标识原创 2012-08-06 08:54:33 · 29137 阅读 · 3 评论 -
Git学习笔记(一) Git的安装与使用
软件包git-doc包含了Git的HTML格式的文档。可以通过执行git help -w 命令自动用web浏览器打开相关子命令的HTML帮助。从Git版本库进行安装的方法:如果在本地克隆一个Git项目的版本库,就可以用版本库同步的方式获取最新版本的Git,这样在下载不同版本的Git源代码时实际上采用了增量方式,非常节省时间和空间,前提是已经用其他方法安装好了Git。具体过程如下:(1)原创 2012-08-05 19:46:48 · 7704 阅读 · 0 评论 -
Git学习笔记(九) 历史穿梭
版本表示法:git rev-parse--git-dir显示Git版本库的位置 --show-cdup显示当前工作区目录的深度 --parseopt解析命令行参数$ git rev-parse --symbolic --branches 显示分支$ git rev-parse --symbolic --tags 显示里程碑$ git rev-parse --symbolic原创 2012-08-08 05:39:20 · 12383 阅读 · 0 评论 -
Git学习笔记(八) Git基本操作
删除文件直接在工作区删除,对暂存区和版本库没有任何影响。本地删除如果要反映在暂存区中应该用git rm命令,对不想删除的文件执行git checkout -- ,可以让文件在工作区重现。用git rm命令执行删除后,删除动作加入了暂存区,这时执行提交动作就从真正意义上执行了文件删除,不过文件只是在版本库的最新提交中被删除了,在历史提交中尚在。$ git add -u 将本地有改动(包括修原创 2012-08-07 11:58:03 · 11551 阅读 · 0 评论 -
Git学习笔记(五) Git重置
重置命令的用法用法一:git reset [-q] [] [--] ... 为了避免路径和引用(或提交ID)同名而发生冲突,可以在前用--作为分隔用法二:git reset [--soft | --mixed | --hard | --merge | --keep] [-q] []为可选项,可以使用引用或提交ID,若忽略则相当于使用了HEAD的指向作为提交ID第一种用法不会重置原创 2012-08-07 12:59:38 · 9737 阅读 · 0 评论 -
Git学习笔记(二) Git初始化
查看Git版本$ git --version配置Git变量这些设置会在全局文件(用户主目录下的.gitconfig)或系统文件(如/etc/gitconfig)中做永久记录配置用户名和邮件地址:(将在版本库提交时用到,为确保提交者信息的正确性一定要设置)$ git config --global user.name "your name"$ git config --glo原创 2012-08-06 15:23:29 · 8770 阅读 · 0 评论 -
Git学习笔记(十二) 前几章的补充
$ git fsck 查看版本库中包含的没有被任何引用关联的松散对象$ git prune 清理版本库(实际操作中很少用到)若撤销的操作仍然记录在reflog中,则Git认为撤销的提交和大文件都可以被追踪到,还在使用着,所以无法用git prune命令删除。如果确认真的要丢弃不想要的对象,需要对版本库的reflog做过期操作,相当于将.git/logs/下的文件清空。reflog的过期操作原创 2012-08-08 20:13:45 · 2996 阅读 · 1 评论 -
Git学习笔记(十) 改变历史
拣选指令:git cherry-pick从众多的提交中挑选出一个提交应用在当前的工作分支中。需要一个提交ID作参数,操作过程相当于将该提交导出为补丁文件,然后在当前HEAD上重放,形成无论内容还是提交说明都一致的提交。对提交执行变基操作:git rebase实现将指定范围的提交嫁接到另外一个提交之上。-i 交互式界面--continue变基遇到冲突而暂停的情况下,先完成冲突解决原创 2012-08-08 15:23:55 · 6899 阅读 · 0 评论 -
Git学习笔记(六) Git检出
检出命令此命令会重写工作区该命令的实质就是修改HEAD本身的指向,不会影响分支游标。当执行此命令时,HEAD头指针被更改了,由指向一个引用(分支)变成了指向一个提交ID,分支(master)的指向没有改变,仍旧指向原有的提交ID“分离头指针”状态:指的是HEAD头指针指向了一个具体的提交ID用法一:git checkout [-q] [] [--] ... 为避免路径和引用(原创 2012-08-07 15:17:59 · 22241 阅读 · 0 评论 -
Git学习笔记(四) Git对象
$ git cat-file -t ID号 查看此ID号对应的对象类型(commit、tree、parent、blob)$ git cat-file -p ID号 查看此ID号对应的对象内容这些对象保存在Git库中的objects目录下(ID前两位作为目录名,后38位作为文件名)通过commit对象之间的相互关联,可以很容易地识别出一条跟踪链,这条跟踪链可以在运行git log命令时通原创 2012-08-07 12:24:45 · 2731 阅读 · 0 评论 -
Git学习笔记(十一) Git克隆
用法1:git clone 将指向的版本库创建一个克隆到目录。目录相当于克隆版本库的工作区,文件都会检出,版本库位于工作区的.git目录中用法2:git clone --bare 用法3:git clone --mirror 用法2和用法3创建的克隆版本库都不包含工作区,直接就是版本库的内容,这样的版本库称为裸版本库。一般约定俗成裸版本库的目录名以.git做后缀,所以上面示例原创 2012-08-08 16:55:26 · 32381 阅读 · 1 评论