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 ...
随机推荐
- python数据结构(二)------元组
元组是不可变序列,因此,元组的操作非常简单,本文就简单介绍一下,并解释下元组存在的意义: 2.2.1 元组的创建 2.2.2 tuple函数 2.2.3 基本元组操作 2.2.4 元组存在的意义 2. ...
- 可拖动div
客户要求,页面有图片并且可以随意拖动 具体实现: css: #div1{ width: 30px; height: 30px; /*一定要绝对定位*/ position: absolute; /*初始 ...
- XBee PRO 900HP远距离无线模块
XBee PRO S3B也称为XBee-900HP无线模块,它是一款工作在频段900~928MHz之间,基于FHSS跳频技术的远距离无线数传电台核心模块.常用型号如下: 类别 型号 开发套件 XKB9 ...
- web安全系列2:http初探
web安全系列的第二篇 首先,我们先来理解两个名词C/S架构和B/S架构. 所谓C/S架构,就是客户机/服务器架构,而B/S架构就是浏览器/服务器架构.C/S是通常的桌面程序的架构方式,而B/S就是网 ...
- MySQL平时记录笔记
零,mysql的安装 http://blog.csdn.net/mhmyqn/article/details/17043921 https://www.cnblogs.com/wangjunyan/p ...
- 关于Data URI
[新增]:http://www.webhek.com/post/data-url.html 引子:在研究FileReader时,有个方法readAsDataURL;然后看到打印出来的东西类似于如下:[ ...
- rem 是如何实现自适应布局的
摘要:rem是相对于根元素<html>,这样就意味着,我们只需要在根元素确定一个px字号,则可以来算出元素的宽高.本文讲的是如何使用rem实现自适应.· rem这是个低调的css单位,近一 ...
- pip3 install的时候报错timed out
问题: 执行pip install requests报错 Read timed out. 解决方法: 修改超时时间: pip --default-timeout=1000 install -U r ...
- rails5 后台入门(api mode)
1. Installation (Centos为例) 1.1安装rvm (http://rvm.io/) gpg2 --recv-keys 409B6B1796C275462A1703113804BB ...
- php中ob_get_contents、curl_multi_init、curl_init多线程下载远程图片并保存记录
php中三种方式测试图片下载效率 原文共24张不同图,每张大小在500K以上 使用时注意调整传入数组格式以及需要下载时保存地址的路径格式等 这三种方式无需额外安装扩展,方便快捷易操作[虽然效率看结果没 ...