学习总结之Git学习-总


目录:

一、Git简介
二、安装Git
三、创建版本库
四、时光机穿梭
五、远程仓库
六、分支管理
七、标签管理
八、使用GitHub
九、使用码云
十、自定义Git
期末总结


十、自定义Git

忽略特殊文件
配置别名
搭建Git服务器

------------------------------------------

10.0 自定义Git介绍

Git有很多可配置项:

最开始的:user.name和user.email(安装Git那节)
比如颜色:如下图

  • 在评论区看到的:
    在Git bash窗口右击 --> 选项options->text 可以选字体字号啥的

------------------------------------------

10.1 忽略特殊文件

忽略某些文件时,需要编写.gitignore
.gitignore文件本身要放到版本库里,并且可以对.gitignore做版本管理

正确的背景:

有些时候,你必须把某些文件放到Git工作目录中,但又不能提交它们,比如保存了数据库密码的配置文件啦,等等,每次git status都会显示Untracked files ...,有强迫症的童鞋心里肯定不爽。

  • 忽略文件的原则是:

    忽略操作系统自动生成的文件,比如缩略图等;
    忽略编译生成的中间文件、可执行文件等,也就是如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库,比如Java编译产生的.class文件;
    忽略你自己的带有敏感信息的配置文件,比如存放口令的配置文件。

配置文件在线浏览

demo 一枚:

10.1.1 .gitignore新建并添加内容

0-#号为注释内容
1-直接写文件名
2-*+文件类型后缀
3-自己的一些东西,密码之类

  • 使用Windows的童鞋,如果你在资源管理器(就是点“我的电脑”或者文件夹打开的那个窗口)里新建一个.gitignore文件,它会非常弱智地提示你必须输入文件名,但是在文本编辑器里“保存”或者“另存为”就可以把文件保存为.gitignore了。
    (评论区看到的方法:)

10.1.2 .gitignore提交到Git

  • 检验方法是:git status --> working directory clean


push到远程库里。记得上节里把GitHub里的远程库的名字从origin改为github了~~

10.1.3 屏蔽与强制添加

有些时候,你想添加一个文件到Git,但发现添加不了,原因是这个文件被.gitignore忽略了:

可能是.gitignore写得有问题,用git check-ignore -v filename.xxx命令检查

可以用-f强制添加到Git

------------------------------------------

10.2 配置别名

给Git配置好别名,就可以输入命令时偷个懒。我们鼓励偷懒。

10.2.1 查看配置信息

git config --global --list - 全局配置信息
git config --local --list - 当前仓库配置信息

10.2.2 配置别名

eg:git config --global alias.st status

  • 错误:error: key does not contain variable name: alias.
  • 原因:alias.st是连在一起的,中间没有空格,刚发现。。。

  • 不过奇怪的是,我只是配置了status,不知道为啥,checkout也自动变了。。
    (是之前就设置过了,只是自己没明白,哈哈)

eg:加单引号的情况 - git config --global alias.last 'log -1'
(用git last就能显示最近一次的提交)

eg:git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

  • 一点:即使配置了别名,原名字还是有效的,所以也不影响

10.2.3 配置文件

每个仓库(local)的Git配置文件都放在.git/config文件中
别名就在[alias]后面,要删除别名,直接把对应的行删掉即可。

当前用户(global)的Git配置文件放在用户主目录下的一个隐藏文件.gitconfig中:
配置别名也可以直接修改这个文件,如果改错了,可以删掉文件重新通过命令配置。

------------------------------------------

10.3 搭建Git服务器

搭建Git服务器非常简单,通常10分钟即可完成
要方便管理公钥,用Gitosis
要像SVN那样变态地控制权限,用Gitolite

一点介绍:

远程仓库和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改。

GitHub就是一个免费托管开源代码的远程仓库。

但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用

搭建Git服务器需要准备一台运行Linux的机器,强烈推荐用Ubuntu或Debian,这样,通过几条简单的apt命令就可以完成安装。
(这就尴尬了,我台式机的双系统不能自攻自受啊,借小笔记本一用吧)

(好了,现在是小本本,台式机双系统的乌班图里搭建服务器)
(此处小本本网络不佳,图传不上去。一气之下决定跳过了)

各种坎坷,最后在评论区看到的,决定,先释怀此节。。毕竟搭建服务器先搞一搞linux再说吧。。

【学习总结】Git学习-参考廖雪峰老师教程十-自定义Git的更多相关文章

  1. 【学习总结】Git学习-参考廖雪峰老师教程二-安装Git

    学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...

  2. 【学习总结】Git学习-参考廖雪峰老师教程-总

    公元2018-10-21 实验室台式机 win7 64位 参考教程: 廖雪峰Git教程 其他资料:Git-book 北大一只总结的笔记,最终整理的时候可以参考:Git笔记 评论区看到的另一个人,总结在 ...

  3. 【学习总结】Git学习-参考廖雪峰老师教程四-时光机穿梭

    学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...

  4. 【学习总结】Git学习-参考廖雪峰老师教程六-分支管理

    学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...

  5. 【学习总结】Git学习-参考廖雪峰老师教程三-创建版本库

    学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...

  6. 【学习总结】Git学习-参考廖雪峰老师教程五-远程仓库

    学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...

  7. 【学习总结】Git学习-参考廖雪峰老师教程八-使用GitHub

    学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...

  8. 【学习总结】Git学习-参考廖雪峰老师教程九-使用码云

    学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...

  9. 【学习总结】Git学习-参考廖雪峰老师教程七-标签管理

    学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...

随机推荐

  1. Shell编程基础知识(一)

    一.基本的运行Linux程序的3种方法: (1) 使文件具有可执行权限,直接运行文件.eg:  chmod a+x testfile.sh   ./testfile.sh (2) 直接调用命令解释器来 ...

  2. kafka_2.11-2.0.0_常用操作

    参考博文:Kafka消费组(consumer group) 参考博文:kafka 1.0 中文文档(九):操作 参考博文:kafka集群管理工具kafka-manager部署安装 以下操作可以在min ...

  3. @ResponseBody注解和@RequestBody注解

    @ResponseBody:表示该方法的返回结果直接写入HTTP response body中一般在异步获取数据时使用, 在使用@RequestMapping后,返回值通常解析为跳转路径,加上@Res ...

  4. CISCO 过载NAT配置(小型网络)

    一.实验涉及技术  vlan(虚拟局域网). svi(三层交换) .nat(网络地址转换).static router(静态路由) 三.实验目的: 通过配置过载NAT从而实现企业内网正常访问公网,PC ...

  5. Mac中selenium使用出现错误

    解决方案是: 首先通过brew 安装 $ brew install geckodriver 然后设置配置文件~/.bash_profile文件 export PATH=$PATH:/path/to/g ...

  6. 安装mysql5.6报错问题统计点

    报错1(su进入mysql属组时报错): [root@dbserver ~]# su - mysql Last login: Thu Aug 31 17:20:03 CST 2017 on pts/1 ...

  7. 启动线程用start方法

    启动线程用start方法而不是用run方法 public static void main(String[] args) { Thread t=new Thread("Thread-TEST ...

  8. Nginx处理请求过程

    1. worker进程工作机制  现在我们了解了当我们在操作nginx的时候,nginx内部做的一些事情,那么worker进程又是如何处理请求的呢?   我们前面有提到,worker进程之间是平等的, ...

  9. P1316 丢瓶盖(二分+贪心)

    思路:都在注解里 #include<iostream> #include<algorithm> using namespace std; ; int a[maxn], n, m ...

  10. Python:Day17 生成器、time和random模块

    列表生成式: a = [x*2 for x in range(10)] #这是最简单的列表生成式,range换成其它的序列也OK a = [f(x) for x in range(10)] #将里将前 ...