everyday git

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

git diff

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

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

这个过程中,比较命令自然是重度使用的一个。常常需要反复比较好几次,才有自信commit。

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

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

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

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

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

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

git remote

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

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
    原文作者:suosuopuo
    原文地址: https://segmentfault.com/a/1190000000586431
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞