Git基本命令 -- 别名 + 忽略 + 推送

别名.

我可以使用这个命令查看repository的历史 git log --all --graph --decorate --oneline:

Git基本命令 -- 别名 + 忽略 + 推送_第1张图片

这个命令可能比较常用, 但是又比较长.

这时我可以创建一个自己的命令, 作为上面命令的别名.

假设我想使用git hist这个命令:

git说这个命令不存在.

这时就可以使用git config alias.xxx命令去创建一个命令的别名:

Git基本命令 -- 别名 + 忽略 + 推送_第2张图片

其中--global表示这个别名是全局的(用户范围内的, 不只限于这个repository), 然后alias.xxx 的xxx就是后边双引号内的命令的别名.

上图可以看到git hist的执行效果和之前的那一串命令是一样的.

 

下面看一下 git config的东西都保存在哪了, 先执行这个命令: git config --list --show-origin.

可以看到在windows 10下, 是在user的下面:

Git基本命令 -- 别名 + 忽略 + 推送_第3张图片

然后可以打开这个文件看看:

Git基本命令 -- 别名 + 忽略 + 推送_第4张图片

所以可以在这里直接修改别名也行.

 

忽略文件.

在项目里添加一个文件 nouse.txt.

Git基本命令 -- 别名 + 忽略 + 推送_第5张图片

假设这是一个项目配置文件, 不能删除, 但是由于里面保存着本机的安全信息, 又不能上传到远程仓库. 

我可以小心翼翼的不去add这个文件. 但是git确实有这样一个命令可以把该文件排除在外, 以后也不去管他.

git使用一个叫.gitignore的文件去做这项工作.

可以看一下working directory:

Git基本命令 -- 别名 + 忽略 + 推送_第6张图片

里面没有这个文件. 所以创建这个文件.

Git忽略的模式是这样的:

针对具体的文件: 就写文件名即可.

针对某种类型的文件: *.后缀名

针对文件夹: 文件夹名/

那么我就把nouse.txt添加到该文件:

然后查看状态:

Git基本命令 -- 别名 + 忽略 + 推送_第7张图片

可以看到.gitignore文件已经起作用了, nouse.txt已经不再被追踪了.

但是.gitignore文件还是一个需要被追踪的文件, 所以针对这个文件还是需要走正常的流程的.

 

下面是另一个例子, 假设我项目中有一些log文件是以.log结尾的 ,例如 apache.log和iis.log等等..

Git基本命令 -- 别名 + 忽略 + 推送_第8张图片

这些log文件不应该被git所管理, 所以打开.gitignore文件, 添加: *.log:

然后查看状态:

Git基本命令 -- 别名 + 忽略 + 推送_第9张图片

可以看到log文件都被排除了.

 

另外一种情况就是文件夹, 假设log都放在logs文件夹下了.

\

然后查看状态:

Git基本命令 -- 别名 + 忽略 + 推送_第10张图片

可以看到这个未被追踪的logs目录. 这是因为logs目录下的文件是被检测到了并且还没有被从git的管辖范围内排除.

这时编辑.gitignore文件, 把logs/添加进去:

查看状态:

Git基本命令 -- 别名 + 忽略 + 推送_第11张图片

这样logs文件夹就被排除了.

 

推送回origin.

查看一下刚才这个项目的状态:

Git基本命令 -- 别名 + 忽略 + 推送_第12张图片

里面写着我的分支比origin/master(我这个项目放在了github上面)领先了6个commit.

所以要把这些变化推送到github上.

首先应该git pull origin master:

因为我并没有在别的地方修改这个仓库的代码, 所以远程仓库没有更新.

现在把变化推送到github, git push origin master:

之前也写过, origin就是github这个仓库的引用/别名, master是它的分支.

Git基本命令 -- 别名 + 忽略 + 推送_第13张图片

到github就可以看到整个commit 历史了:

Git基本命令 -- 别名 + 忽略 + 推送_第14张图片

 

今天提到的命令有: git config alias.xxx, git config --list --show-origin, git pull origin master, git push origin master

还有.gitignore文件.

你可能感兴趣的:(Git基本命令 -- 别名 + 忽略 + 推送)