git的常用命令其实也挺多的 : ) 

从工作区working directory提交文件到暂存区stage的时候用的命令是

$ git add LICENSE

如果只有一个文件就写一句代码就能提交了,如果是多个文件LICENSE1,LICENSE2,LICENSE3那应该怎么方便快捷的提交文件到暂存区stage呢?这将用到git add的参数,当然,git add可以提交一个目录里的文件。

$ git add -u
$ git add -u 表示添加非新增的被修改或者删除的文件。
git add -u [<path>]: 把<path>中所有被跟踪tracked文件中被修改过或已删除文件的信息添加到暂存区stage。它不会处理未跟踪untracted的文件(也就是新创建的文件)。省略<path>表示.,即当前目录。

$ git add -A
$ git add -A [<path>]表示把<path>中所有被跟踪tracked文件中被修改过或已删除文件和所有非跟踪untracted的文件信息添加到暂存区stage。省略<path>表示.,即当前目录。(是不是感觉用-A就万能了?: ))

其他参数以后再补充。


在说git reset命令前我想先说下git log跟git reflog命令。

$git log --oneline

$git reflog --oneline

查看日志,可查看相关操作的版本号。如果不小心把最新的版本git reset了,可以用查到的版本号重新找回版本。

$ git reset --hard 59a9e95

git reset有三种方式,根据--soft --mixed --hard,会对工作区working directory和暂存区stage和HEAD进行重置,
$ git reset --mixed,(HEAD updated)此为默认方式,不带任何参数的git reset就是mixed模式,它回退到某个版本,只保留源码,回退commit和index信息。
$ git reset --soft,(HEAD and index updated)回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可。
$ git reset  --hard,(HEAD, index, and working directory updated)彻底回退到某个版本,本地库源码也会变为上一个版本的内容。


记录相关,方便自己和他人阅读

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐