Git基本命令 -- 别名 + 忽略 + 推送
别名.
我可以使用这个命令查看repository的历史 git log --all --graph --decorate --oneline:

这个命令可能比较常用, 但是又比较长.
这时我可以创建一个自己的命令, 作为上面命令的别名.
假设我想使用git hist这个命令:

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

其中--global表示这个别名是全局的(用户范围内的, 不只限于这个repository), 然后alias.xxx 的xxx就是后边双引号内的命令的别名.
上图可以看到git hist的执行效果和之前的那一串命令是一样的.
下面看一下 git config的东西都保存在哪了, 先执行这个命令: git config --list --show-origin.
可以看到在windows 10下, 是在user的下面:

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

所以可以在这里直接修改别名也行.
忽略文件.
在项目里添加一个文件 nouse.txt.

假设这是一个项目配置文件, 不能删除, 但是由于里面保存着本机的安全信息, 又不能上传到远程仓库.
我可以小心翼翼的不去add这个文件. 但是git确实有这样一个命令可以把该文件排除在外, 以后也不去管他.
git使用一个叫.gitignore的文件去做这项工作.
可以看一下working directory:

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

Git忽略的模式是这样的:
针对具体的文件: 就写文件名即可.
针对某种类型的文件: *.后缀名
针对文件夹: 文件夹名/
那么我就把nouse.txt添加到该文件:

然后查看状态:

可以看到.gitignore文件已经起作用了, nouse.txt已经不再被追踪了.
但是.gitignore文件还是一个需要被追踪的文件, 所以针对这个文件还是需要走正常的流程的.
下面是另一个例子, 假设我项目中有一些log文件是以.log结尾的 ,例如 apache.log和iis.log等等..


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

然后查看状态:

可以看到log文件都被排除了.
另外一种情况就是文件夹, 假设log都放在logs文件夹下了.
\
然后查看状态:

可以看到这个未被追踪的logs目录. 这是因为logs目录下的文件是被检测到了并且还没有被从git的管辖范围内排除.
这时编辑.gitignore文件, 把logs/添加进去:

查看状态:

这样logs文件夹就被排除了.
推送回origin.
查看一下刚才这个项目的状态:

里面写着我的分支比origin/master(我这个项目放在了github上面)领先了6个commit.
所以要把这些变化推送到github上.
首先应该git pull origin master:

因为我并没有在别的地方修改这个仓库的代码, 所以远程仓库没有更新.
现在把变化推送到github, git push origin master:
之前也写过, origin就是github这个仓库的引用/别名, master是它的分支.

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

今天提到的命令有: git config alias.xxx, git config --list --show-origin, git pull origin master, git push origin master
还有.gitignore文件.
Git基本命令 -- 别名 + 忽略 + 推送的更多相关文章
- Git:多人推送/抓取分支事项
1.推送分支 1.1使用命令符git push origin branch-name,推送自己已修改的分支 例如git push origin master,git push origin dev. ...
- Git如何把本地代码推送到远程仓库
Git如何把本地代码推送到远程仓库 1. 初始化版本库 $ git init 2. 添加文件到版本库(只是添加到缓存区),.代表添加文件夹下所有文件 $ git add . 3. 把添加的文件提交到版 ...
- 解决git rebase操作后推送远端分支不成功的问题
转:解决git rebase操作后推送远端分支不成功的问题 前段时间在工作中同事在rebase时遇到一个问题来问我,今天突然想起来觉得有必要记录一下. 在我们日常工作中,经常使用git座位代码管理工具 ...
- Git for Windows之推送本地版本库到远程仓库
Git for Windows之基础环境搭建与基础操作中介绍了Git基本环境的构建与基本的操作.生成了一个本地git版本库,本文将介绍如何将这个版本库推送到远程仓库(码云,github也可以). 1. ...
- 使用tortoise git将一个现有项目推送到远程仓库
一.安装文件: 1.git https://git-scm.com/downloads 2.tortoise git https://tortoisegit.org/download/ 二.将一个现有 ...
- git将本地仓库推送到远程仓库
如何将本地仓库推送到公司远程仓库? 1:前提是你本地安装好git.先把远程git仓库克隆到本地 git clone 远程仓库的地址(SSH) 2: git branch //查看本地分支 3: g ...
- git 打标签并推送tag到托管服务器
我们常常在代码封板时,使用git 创建一个tag ,这样一个不可修改的历史代码版本就像被我们封存起来一样,不论是运维发布拉取,或者以后的代码版本管理,都是十分方便的. 首先我们了解下 git 的 ta ...
- 【Git使用】强制推送代码到多个远程仓库
只吃了一个香蕉的晚上 一直预报的台风没有来,大盘也飘红了,世界好像变得越来越美好了似的.前两天,晚上下班坐地铁回家,靠在地铁门上看书,竟然坐到了终点站已全然不知,我也不知道我怎么了.怎么了.怎么了!最 ...
- git 使用钩子直接推送到工作目录
远端机器 $ mkdir /www/teacherapi # 创建工作目录 $ cd /data/git $ git init teacherapi.git --bare --shared Init ...
随机推荐
- pd16.5增加字段备注
EXEC sp_addextendedproperty 'MS_Description', %.q:COLNNAME%, 'user', dbo, 'table', %TABLE%, 'column' ...
- PPS--在download DN出现的问题注意:
1,DN的下载条件:(没有删除没有下载) PPSL=’N’(PPSL有两个值,N时是指这个DN还没有下载) DEL_FLAG<>’Y’(DEL_FLAG有两个值,Y时说明已经删除,不会下载 ...
- windows2012 raid架构 忘记系统管理员密码的解决方法
1. http://bbs.51cto.com/thread-939710-1.html 2. https://wenku.baidu.com/view/115783cd0b4e767f5acfcef ...
- python 机器学习
十分钟搞定pandas http://www.cnblogs.com/chaosimple/p/4153083.html dummies 哑变量,将变量重新编码,便于二分类,例如男.女,变为0,1等 ...
- MySQL数据库学习书单/书籍
MySQL数据库学习书单 1.MySQL必知必会(MySQL Crash Course) 豆瓣详情 主要适合前期掌握MySQL,豆瓣评分8.4. 2.高性能MySQL 豆瓣详情 主要适合进阶阅读使 ...
- 别人的Linux私房菜(17)进程管理与SELinux初探
程序在磁盘中,通过用户的执行触发.触发事件时,加载到内存,系统将它定义成进程,给予进程PID,根据触发的用户和属性,给予PID合适的权限. PID和登陆者的UID/GID有关.父进程衍生出来的进程为子 ...
- lua杂记
protoc-gen-lua 编译.安装.使用教程: https://blog.csdn.net/huutu/article/details/49672225 https://github.com/s ...
- jquery学习总结12-24
一.jquery操作类的相关方法 1.addClass()方法可以为DOM元素添加类,若添加多个类中间可以用空格连接 2.removeClass()方法可以为DOM元素删除类,若删除多个类中间可以用空 ...
- 2019.03.26 bzoj4448: [Scoi2015]情报传递(归并排序+树链剖分)
传送门 题意简述: 给一棵nnn个点的树,树上每个点表示一个情报员,一共有mmm天,每天会派发以下两种任务中的一个任务: 1.搜集情报:指派T号情报员搜集情报 2.传递情报:将一条情报从X号情报员传递 ...
- sublime text3如何在浏览器预览?
插件: view-in-browser CTRL + ALT + V 打开浏览器 默认打开firefox,settings里面可修改. Sublime Text - View In Browser V ...