Git安装配置(完整版)
首先安装Windows客户端的git和TortoiseGit。
安装这两个软件还是蛮重要的,很多选项不能乱选。
为了写个完整的博客,我是装了又卸,卸了又装。
1.安装git
下载:https://git-scm.com/
2.安装TortoiseGit
下载 https://tortoisegit.org/download/ 别忘了中文语言包也一起下载了
当把乌龟安装好后遇到语言选择的界面先别动,直接安装中文包,中文包安装好后再继续配置乌龟点击refresh就可以选择中文继续往下走。
3.安装git
yum install git
4.创建存储目录(涉及路径乃自定义,看心情。)
mkdir /var/gitdata
5.添加git用户
groupadd git
useradd git -g git
passwd git
6.切换到git账号
su git
7.创建项目仓库
cd /var
mkdir gitdata/shici.git
8.初始化裸仓库
git init --bare gitdata/shici.git
9.创建公钥
ssh-keygen(按这条命令的时候直接按回车 不要输入东西)
然后会在当前用户也就是git用户的家目录里生成一个.ssh目录 里面id_rsa是私钥 id_rsa_pub是公钥
10.切换回root
su root
vi /etc/ssh/sshd_config
打开以下注释:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys (指定存放公钥的路径是git家路径.ssh下的authorized_keys)
11.重启sshd服务
systemctl restart sshd.service
12.客户端创建公钥
在本地项目目录中找个空目录,点击右键打开git bash
ssh-keygen(按这条命令的时候直接按回车,不要输入东西)
此时,C:\user\用户名\.ssh下会多出两个文件id_rsa是私钥,id_rsa_pub是公钥。
13.下面两条语句客户端和服务器端都要执行 输入自己github上的用户名和邮箱
git config --global user.name small-qiutian
git config --global user.email 937240319@qq.com
14.服务端存放客户端公钥
vi /home/git/.ssh/authorized_keys
将客户端的公钥文件里的东西全部复制进去 当然 当前目录下的那个id_rsa.pub里的内容也可以一股脑儿复制进来。
15.修改权限
.ssh目录的权限必须为700(必须)
chmod 700 /home/git/.ssh
.ssh/authorized_keys文件的权限必须为600(必须)
chmod 600 /home/git/.ssh/authorized_keys
修改家目录所有者
chown -R git:git /home/git
16.github存放服务端公钥
打开https://github.com/ 登陆账号 进入设置
在SSH and GPG keys中添加Linux服务端的公钥,title随便填,内容把公钥文件里的东西全部复制过来就行。
回到Linux 输入以下命令:
ssh -T git@github.com
输入yes回车 提示成功
17.检出项目(用git的话叫做克隆项目)
切换git账号
su git
git clone git@116.62.171.126:/var/gitdata/shici.git
以上命令客户端打开bash输入一遍,服务端也输入一遍。
18.一些简单的命令
git add 1.txt #添加文件到本地仓库
git rm 1.txt #本地仓库内删除
git commit -m "first commit" #提交到本地库并备注,此时变更仍在本地。
git commit -a #自动更新变化的文件,a可以理解为auto
git push origin master #将本地文件提交到Github的remoname版本库中。此时才更新了本地变更到github服务上。
git pull origin master #更新项目
19.钩子
切换root账号
su root
vi /var/gitdata/shici.git/hooks/post-receive
输入以下四行内容:
#!/usr/bin/bash
cd /var/www/shici
unset GIT_DIR
git pull origin master
(第一行请自行以whereis bash查找一下你服务器上的bash路径,第二行cd进项目目录)
再给个权限:
chmod 755 /var/gitdata/shici.git/hooks/post-receive
chown git:git /var/gitdata/shici.git/hooks/post-receive
这样客户端提交代码,服务端项目就可以自动更新了,前提是必须切换到git账号手动拉取一下项目,进行一个yes授权记住密码,否则无法自动更新。客户端也一样,所有的基本操作最好先用bash命令行走一圈。
20.禁止登陆shell
vi /etc/passwd
找到git用户那一行 改为:
git:x:1001:1000::/home/git:/usr/bin/git-shell
(最后的路径是你的服务器上git-shell的实际路径)
至此,git的安装配置已经全部讲解完毕,这应该算是全网最详细的流程了。
感谢阅读
Git安装配置(完整版)的更多相关文章
- JMeter下载及安装配置完整版
特别需要注意的时,jdk版本和jmeter版本匹配问题. Jdk1.8对应apache-jmeter-3.3 Jmeter下载及安装配置 本文是在win7环境下安装使用jmeter,jmeter可以运 ...
- MySQL5.6 Replication主从复制(读写分离) 配置完整版
MySQL5.6 Replication主从复制(读写分离) 配置完整版 MySQL5.6主从复制(读写分离)教程 1.MySQL5.6开始主从复制有两种方式: 基于日志(binlog): 基于GTI ...
- [转帖]redhat7.6Linux安装Oracle19C完整版教程
redhat7.6Linux安装Oracle19C完整版教程 https://www.oracle.com/technetwork/database/enterprise-edition/downlo ...
- Git 安装配置手册
Git 安装配置手册 首先我们要了解 Git 是类似于 SVN 用来管理项目的 首先要先下载 Git ,这个东西相当于一个核,是该功能的核心 下载地址(<https://gitforwindow ...
- Git安装配置和提交本地代码至Github,修改GitHub上显示的项目语言
1. 下载安装git Windows版Git下载地址: https://gitforwindows.org/ 安装没有特别要求可以一路Next即可,安装完成后可以看到: 2. 创建本地代码仓库 打开G ...
- Android studio gradle配置完整版(转)
Android studio gradle配置完整版https://my.oschina.net/u/1471093/blog/539075 Android studio 自定义打包apk名 - pe ...
- Git-Runoob:Git 安装配置
ylbtech-Git-Runoob:Git 安装配置 1.返回顶部 1. Git 安装配置 在使用Git前我们需要先安装 Git.Git 目前支持 Linux/Unix.Solaris.Mac和 W ...
- Linux下git安装配置
一.Linux下git安装配置 2013-07-28 20:32:10| 分类: 默认分类 | 标签:linux git server |举报|字号 订阅 http://abomby ...
- 【第二篇】- Git 安装配置之Spring Cloud直播商城 b2b2c电子商务技术总结
Git 安装配置 在使用Git前我们需要先安装 Git.Git 目前支持 Linux/Unix.Solaris.Mac和 Windows 平台上运行. Git 各平台安装包下载地址为:http://g ...
随机推荐
- (转)Java并发编程:深入剖析ThreadLocal
Java并发编程:深入剖析ThreadLoca Java并发编程:深入剖析ThreadLocal 说下自己的理解:使用ThreadLocal能够实现空间换时间,重在理解ThreadLocal是如何复制 ...
- Python:使用Kivy将python程序打包为apk文件
1.概述 Kivy是一套Python下的跨平台开源应用开发框架,官网,我们可以用 它来将Python程序打包为安卓的apk安装文件.以下是在windows环境中使用. 安装和配置的过程中会下载很多东西 ...
- hash冲突随笔
一:hash表 也叫散列表,以key-value的形式存储数据,就是将需要存储的关键码值通过hash函数映射到表中的位置,可加快访问速度. 二:hash冲突 如果两个相同的关键码值通过hash函数映射 ...
- [BZOJ 1409] Password
贴一发题面 1409: Password Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 242 Solved: 82[Submit][Status][D ...
- 聪聪和可可[NOI2005]
[问题描述] 在一个魔法森林里,住着一只聪明的小猫聪聪和一只可爱的小老鼠可可.虽然灰姑娘非常喜欢她们俩,但是,聪聪终究是一只猫,而可可终究是一只老鼠,同样不变的是,聪聪成天想着要吃掉可可. 一天,聪聪 ...
- iOS设置圆角的常用方法
//第一种方法:最常用的方法,但是性能最差 UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(100, 100 ...
- zzuli--2134: 维克兹的进制转换(规律)
2134: 维克兹的进制转换 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 287 Solved: 63SubmitStatusWeb Board D ...
- UNIX 技巧: UNIX 高手的另外 10 个习惯
让我们面对现实吧:坏习惯很难改变.但是您已经熟悉的习惯可能更难克服.有时,重新审视某些事情可能让您遇到“啊哈,我没想到它能做到这一点!”的时刻.在 Michael Stutz 的优秀文章“UNIX 高 ...
- Oracle进程与系统进程
--Oracle进程与系统进程 --------------------------2013/11/25 这里讨论Linux/Unix环境下,oracle v$process与操作系统对应的关系. 系 ...
- python ——面向对象进阶
1.staticmethod和classmethod staticmethod 静态方法: 让类里的方法,直接被类调用,就像正常的函数一样 宝宝,男 博博,女 海娇,男 海燕,女 海东,男 海峰,男 ...