Git简单教程
1、删除已关联的远程仓库:
Gitremote rm <name>(远程仓库的名字,自己命名的)
2、 关联第一个远程仓库:git remote add github git@github.com:youname/project.git
因为关联的github所以起名github
3、 关联第二个远程仓库:git remote add gitee git@gitee.com:younmae/project.git
因为关联的码云所以起名gitee
4、 推送命令分为两个:
Git push github master; git push giteemaster
七、自定义Git
一、忽略特殊文件
在Git工作区的根目录下创建一个特殊的“.gitignore” 文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件。
不需要从头写.gitignore文件,GitHub已经为我们准备了各种配置文件,只需要组合一下就可以使用了。所有配置文件可以直接在线浏览:https://github.com/github/gitignore
忽略文件的原则是:
1、忽略操作系统自动生成的文件,比如缩略图等;
2、忽略编译生成的中间文件、可执行文件等,也就是如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库,比如Java编译产生的.class文件;
3、忽略你自己的带有敏感信息的配置文件,比如存放口令的配置文件。
例如python开发:
# Windows:自动生成的文件需要忽略
Thumbs.db
ehthumbs.db
Desktop.ini
# Python:python编译时产生的文件需要忽略
*.py[cod]
*.so
*.egg
*.egg-info
dist
build
# My configurations:自己写的定义的一些文件需要忽略
db.ini
deploy_key_rsa
最后提交Git
强制提交忽略的文件:git add –f filename
添加文件有问题,检查忽略文件:git check-ignore -vfilename
二、Git 命令配置别名
--global参数是全局参数,也就是这些命令在这台电脑的所有Git仓库下都有用
git config --global alias.st status ----> git status ---->git st
git config --global alias.co checkout ---->git checkout ---->git co
git config --global alias.ci commit ---->git commit ---->gitci
git config --global alias.br branch ---->gitbranch ---->git br
git config --global alias.unstage 'resetHEAD' ---->git reset HEAD file ---->git unstage file
git config –global alias.last 'log -1' ---->git log -1 ---->gitlast
甚至还有人丧心病狂地把lg
配置成了:
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"
来看看git lg
的效果:
配置文件:
配置Git的时候,加上--global
是针对当前用户起作用的,如果不加,那只针对当前的仓库起作用。
配置文件放哪了?每个仓库的Git配置文件都放在.git/config
文件中:
$ cat .git/config
[core]
repositoryformatversion =
0
filemode =
true
bare =
false
logallrefupdates =
true
ignorecase =
true
precomposeunicode =
true
[remote
"origin"]
url = git
@github.
com:michaelliao/learngit.git
fetch = +refs/heads/*
:refs/remotes/origin/*
[branch
"master"]
remote = origin
merge = refs/heads/master
[
alias]
last = log -
1
别名就在[alias]
后面,要删除别名,直接把对应的行删掉即可。
而当前用户的Git配置文件放在用户主目录下的一个隐藏文件.gitconfig
中:
$ cat .gitconfig
[
alias]
co = checkout
ci = commit
br = branch
st = status
[user]
name =
YourName
email = your
@email.com
配置别名也可以直接修改这个文件,如果改错了,可以删掉文件重新通过命令配置。
三、搭建Git服务器
搭建Git服务器需要准备一台运行Linux的机器,强烈推荐用Ubuntu或Debian,这样,通过几条简单的apt命令就可以完成安装。
假设你已经有sudo权限的用户账号,下面,正式开始安装。
1、 安装Git : sudo apt-get install git
2、 创建Git用户,用来运行Git服务:sudo adduser git
3、 创建登录证书:收集所有需要登录的用户的公钥,就是他们自己的id_rsa.pub文件,把所有公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。
4、 初始化Git仓库:选定一个目录:sudo git init --bare sample.git;Git就会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git结尾。然后,把owner改为git:sudo chown -R git:git sample.git
5、 禁用shell登录:
出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd
文件完成。找到类似下面的一行:
git:x:1001:1001:,,,
:/home/git:/bin/bash
改为:
git:x:1001:1001:,,,
:/home/git:/usr/bin/git-shell
这样,git
用户可以正常通过ssh使用git,但无法登录shell,因为我们为git
用户指定的git-shell
每次一登录就自动退出。
6、克隆远程仓库:git clone git@server:/srv/sample.git
责任编辑:售电衡衡
-
权威发布 | 新能源汽车产业顶层设计落地:鼓励“光储充放”,有序推进氢燃料供给体系建设
2020-11-03新能源,汽车,产业,设计 -
中国自主研制的“人造太阳”重力支撑设备正式启运
2020-09-14核聚变,ITER,核电 -
探索 | 既耗能又可供能的数据中心 打造融合型综合能源系统
2020-06-16综合能源服务,新能源消纳,能源互联网
-
新基建助推 数据中心建设将迎爆发期
2020-06-16数据中心,能源互联网,电力新基建 -
泛在电力物联网建设下看电网企业数据变现之路
2019-11-12泛在电力物联网 -
泛在电力物联网建设典型实践案例
2019-10-15泛在电力物联网案例
-
权威发布 | 新能源汽车产业顶层设计落地:鼓励“光储充放”,有序推进氢燃料供给体系建设
2020-11-03新能源,汽车,产业,设计 -
中国自主研制的“人造太阳”重力支撑设备正式启运
2020-09-14核聚变,ITER,核电 -
能源革命和电改政策红利将长期助力储能行业发展
-
探索 | 既耗能又可供能的数据中心 打造融合型综合能源系统
2020-06-16综合能源服务,新能源消纳,能源互联网 -
5G新基建助力智能电网发展
2020-06-125G,智能电网,配电网 -
从智能电网到智能城市