Git学习笔记
Posted U0U悠悠U0U
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git学习笔记相关的知识,希望对你有一定的参考价值。
标签管理
一、创建标签
创建标签,更容易记住名字,创建和删除标签都是瞬间完成。
1、创建和查看标签名:
2、给历史某个commit添加标签:
注意:tag标签不是时间排序列出,是按字母列出。
3、查看标签信息git show <tagname>:
4、创建带说明的标签,用-a指定标签名,-m指定说明文字:
查看:
5、使用-s用私钥签名一个标签:
标签采用PGP签名,必须安装gpg(GnuPG)如果没安装会报错:
安装后,可以使用git show <tagname> 可以看到PGP签名信息
二、 标签操作
1.标签:
2、推送某个标签到远程 git push origin <tagname>:
$ git push origin v1.0 Total 0 <delta 0>,reused 0 <delta 0> To github.com:AngleHeart/gitskills.git Xinghao [new tag] v1.0 -> v1.0
3、一次性推送全部本地标签到远程:$ git push origin –-tags
4、删除远程标签:
a 删除本地标签: $git tag –d v1.0 b 删除远程标签: $git push origin :refs/tags/v1.0
自定义Git
一、忽略特殊文件
1、定义git显示样式,会适当的显示不同的颜色,做区分:
2、忽略特殊文件规则:
a.统自动生成的文件。
b.忽略自动编译生成的中间文件、可执行文件等,就是如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库。
c.略自己带有敏感信息的配置文件,如口令的配置文件。
3、新建一个.gitignore文件(禁止提交的文件,自定义),提交到Git:
# Windows: Thumbs.db ehthumbs.db Desktop.ini # Python *.py[cod] *.so *.egg *.egg-info dist build # My configurations: db.ini deploy_key_rsa *.idea
windows创建.gitignore时,会要求必须输入文件名。可使用编辑器创建该文件
4、有时添加一个文件会失败,这是因为别 .gitignore忽略了:
5、可以用 –f 强制添加到Git:
6、可以使用 git check-ignore 命令查询 .gitignore 的位置:
一、配置别名
1.简写命令
git status => git st :
$ git config –global alias.st status
$ git config –global alias.co checkout
$ git config –global alias.ci commit
$ git config –global alias.br branch
--global参数是全局参数,修改之后的命令,在当前电脑下所有Git仓库都适用。
git reset HEAD file => git unstage 把暂存的区域撤销:
$ git config –blobal alias.unstage “reset HEAD”
git log -1 => git last 最后一次提交
$ git config –blobal alias.last “log -1”
2.git lg:
3.配置文件
有—global是针对当前用户起作用,不加,只针对当前仓库。
每个仓库的Git配置文件都在.git/config文件中:
[core] repositoryformatversion = 0 filemode = false bare = false logallrefupdates = true symlinks = false ignorecase = true [remote "origin"] url = git@github.com:AngleHeart/gitskills.git fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/master [alias] co = checkout t = status
别名就在[alias]后面。
当前用户Git配置文件在用户主目录下的一个隐藏文件.gitconfig 中:
[user] name = youyou email = 595093508@qq.com [color] ui = true [alias] st = status lg = log --color --graph --pretty=format:\'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset\' --abbrev-commit
三、搭建Git服务器(个人没有搭建过,只做记录)
搭建Git服务器需要一台运行Linux的机器,推荐用Ubuntu或Debian。
有sudo 权限,开始安装:
第一步,安装git:
$ sudo apt-get install git
第二步,创建一个git 用户,运行git服务:
$ sudo adduser git
第三步,创建证书登录:
把公钥 id_rsa.pub 文件,导入 /home/git/.ssh/authorized_keys 文件中,一行一个。
第四步,初始化Git仓库:
选择一个目录,假设是 /srv/sample.git,在 /src 目录下输入命令:
$ sudo git init –bare sample.git
用户不可以直接在服务器上操作,服务器上Git仓库是为了共享,Git仓库通常以 .git 结尾。把owner改为git:
$ sudo chown –R git:git sample.git
第五步,禁用shell登录:
第二部创建的用户不允许登录shell,通过编辑 /etc/passwd 文件完成,找到类似:
git:x:1001:1001:,,,:/home/git:/bin/bash
改为:
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
用户可以通过ssh使用git。
第六步,远程克隆仓库:
$ git clone git@server:/srv/sample.git
以上是关于Git学习笔记的主要内容,如果未能解决你的问题,请参考以下文章