everyday git

git命令很少,可是用法却有不少。这篇文章会长期更新,可是固然不会面面俱到,只是记录一些应用场景。git

git diff

使用VCS,比较版本差别是最经常使用的一个功能。
我我的写代码经常是这样的流程:github

  1. 修改代码,或文档。
  2. git status 看改了哪些文件,有没有新增的文件。
  3. 有新文件的话git add一下。
  4. git difftool仔细排查修改有没有错误。
  5. 认为没有错误了就git commit -amgit commit -as

这个过程当中,比较命令天然是重度使用的一个。经常须要反复比较好几回,才有自信commit。bash

1. 查看被修改的文件列表

若是只是查看当前修改了哪些文件(和HEAD比较),git status就够了。
若是是查看之前的commit之间修改了哪些文件,能够参考下面的命令。重点是--name-only--name-status,其余参数就不一一说明了。网络

查看两次commit之间修改了哪些文件:code

git diff  --name-only HEAD~4 HEAD~5

查看两次commit之间修改了哪些文件, 以及对文件作了什么类型的修改(M - modify, D - delete, A - add):server

git diff  --name-status HEAD~4 HEAD~5

git remote

git remote查看远程repo的别名。
git remote -v查看远程repo的别名和地址。rem

1. 用移动硬盘或U盘当git server

我这么作,是由于某一次要去山上住几天,没有网络,我妈又不让我带电脑,可是我又很但愿山上那几天能写写代码,等有网时再push到github。因此有了下面的步骤:文档

  1. 本身电脑上已经从github上clone了一个repo,并作了修改。
  2. 插入移动硬盘,假设挂载到/media/xdisk,建立目录mkdir /media/xdisk/repo.git
  3. cd /media/xdisk/repo.git而后git init --bare
  4. 切回到本地repo,而后git remote add usb /media/xdisk/repo.git。这时候git remote能够看到origin和usb两个remote端。
  5. push到移动硬盘git push usb master
  6. 拿着移动硬盘去深山里借高僧的电脑~~
  7. 插入移动硬盘,假设挂载到/media/ydisk
  8. clone到高僧的电脑git clone /media/ydisk/repo.git
  9. cd到repo目录下写代码。
  10. 写完git push master就行了,而后回家。
  11. 移动硬盘插到本身电脑上,仍是挂载到/media/xdisk
  12. git pull usb而后git push origin master
相关文章
相关标签/搜索