梦见世界

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

git 命令

git hash-object file 用于计算一个文件的散列值

git write-tree 将index状态创建一个tree对象

git commit-tree tree sha1值

git commit 就是由这两个命令组成

git commit -a/-all -a/-all选项会导致执行提交之前自动暂存所有未暂存的和未追踪的文件变化,包括从工作副本中删除已追踪的文件

git add 将文件暂存或者说吧文件放入索引,参数可以是文件或者目录,如果参数是目录,将会递归暂存子目录和文件

git rm 是与git add相对的命令,为删除功能,它会将文件从索引和工作目录中都删除。 其中git rm --cached file 用于将一个文件从已暂存转化成未暂存的,该命令会删除索引中的文件,但会把它保留在工作目录中

如果不小心用git rm将文件删除怎么办呢? 可以用git checkout HEAD -- file将文件恢复回来。

git mv 用于移动或者重命名tracked file, git mv file newfile 等价于 mv file newfile  ;  git rm file ;git add newfile

git log 用于查看git提交日志,里面有每次提交的SHA1值,提交时间,提交人等信息。 

        选项  -p: 用于输出提交引进的补丁或变更

                -num :num为数字,用于限制最多输出num个提交

git branch 用于显示所有分支以及当前分支

git diff 用于比较工作目录和索引之前的差异。

git diff commit 用于比较给定提交和工作目录之间的差异

git diff commit1 commit2 用于比较commit1和commit2的差异

 

git 文件类型

tracked: 已经存在于版本库或者已暂存到索引的文件 git add 能够将一个新文件添加为tracked file

ignored: 被忽略的文件,必须在版本库中被明确声明为不可见或者忽略

untracked:不在前两类的文件都属于untracked file

git .gitignore

Git允许在版本库中任何目录下有。gitignore文件,每个文件都只影响该目录以及子目录。。gitignore的规则也是级联的:只需要在其子目录中包含一个取反模式,那么该层目录的取反文件就不会被忽略。

 

posted on 2015-08-13 15:45  梦见世界  阅读(122)  评论(0编辑  收藏  举报