【Linux部署 · GIT】在linux系统安装git和配置实现SSH
领导给了一个不开放ftp的测试库,让我部署项目。拿到一个全新的环境,真是个练手的好机会。
该操作系统为:CentOs release 6.5(Final)
由于不开放ftp,所以上传下载代码是非常麻烦的,我想到的解决方法就是git来做同步和版本控制。
1,检查是否安装git
yum -y install git
控制台输出结果:-bash: yun: command not found 【没有安装git】
2,安装git
yum install git
我最喜欢的命令就是yum,这是最简单的方式了(其实就是我掌握的命令有限)。
安装过程中会提示:
Is this ok [y/N]:
这里输入y即可。
3,验证git是否安装成功
git --version
控制台输出:
git version 1.7.1
这说明安装成功了。
通常来说,如果没有指定安装路径,git的默认安装目录:/usr/share/git-core/
4,配置git的SSH连接方式
这里也证明了ssh_key在不同操作系统的可移植性。
我这里采用的是从其它操作系统拷贝过来的密钥公钥,因此不在这里赘述生成ssh_key的方式,如果需要了解自行百度。
cd /.ssh
vi id_rsa
进入到.ssh目录,并且新建id_rsa文件,从我其他可用的操作系统复制过来。
这里涉及到的linux命令有:
vi : 打开文件编辑,如果文件不存在会自动创建;
i:打开文件之后输入i会进入insert模式;
ESC+Shift+zz : 最简单退出vim并保存的操作。
同样的方式创建:

最后将密钥添加到ssh-agent中,这样密钥才会起作用
ssh-add /.ssh/id_rsa
5,配置git的SSH非默认端口(该步骤可以省略)
Port 7700
这里的端口号使用7700,当然也可以根据实际情况设置其它的端口号。
6,git clone 项目
一般我习惯在/root/projectName/code下创建git根目录
cd /root/projectName/code
git init
git clone git@xxx.xxx.x.xx:project -b branch
分支太多,我们通常也只是选定某个分支部署。
如果没有在config文件中配置端口号,那么克隆代码的命令可以使用如下:
git clone ssh://git@xxx.xx.xxx.xx:port/project -b branch
7,遇到的问题总结
(1)执行ssh-add命令报错:
Could not open a connection to your authentication agent.
解决方法:
eval `ssh-agent -s`
(2)执行ssh-add命令报错:
Permissions 0644 for '/.ssh/id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
解决方法:
cd /.ssh
chmod 700 id_rsa
(3)由于一开始我的私钥配置等没有放在/.ssh目录下,而是放置在/root/.ssh目录下,所以遇到了下面这个问题:
Permission deined,please try again.
'git@xxx.xx.xxx.xx' s password:
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)
fatal:The remote end hung up unexpectedly
这个我估计是用户权限的问题,懒得从权限这方面去入手解决。我直接更换到/.ssh就可以解决问题。
---------------------------------------- end -------------------------------------------------
为自己鼓掌~!!!棒棒哒。
【Linux部署 · GIT】在linux系统安装git和配置实现SSH的更多相关文章
- Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)【转】
jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...
- Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)
jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...
- Linux、Debian、Jenkins、GIT、Nginx、码云安装,自动化部署前后端分离项目
1.安装Jenkins i:下载Jenkins安装包(war文件):https://jenkins.io/download/ ii:这里采用Tomcat的war包方式安装,讲下载好的安装包放到Tomc ...
- git安装--linux下的安装
一般linux自带git版本很旧,会有一定问题,可以先卸载系统自带git: yum remove git下载及安装git: wget https://github.com/git/git/archiv ...
- 如何在Linux下使用Gitblit工具创建Git仓库服务
嗨!朋友,今天我们将学习如何在你的Linux服务器或者PC上安装Gitblit工具.首先,我们看看什么是Git,它的功能以及安装Gitblit的步骤.Git是分布式版本控制系统,它强调速度.数据一致性 ...
- 11 个 Linux 上最佳的图形化 Git 客户端
Git是软件开发和若干其他版本控制任务免费和开源的分布式版本控制系统.它被设计用来以应付一切从小到非常大的项目,基于速度,效率和数据完整性. Linux用户主要通过命令行管理Git,不过,一些图形用户 ...
- GIT在Linux上的安装和使用简介
GIT最初是由Linus Benedict Torvalds为了更有效地管理Linux内核开发而创立的分布式版本控制软件,与常用的版本控制工具如CVS.Subversion不同,它不必服务器端软件支持 ...
- Linux基础※※※※如何使用Git in Linux(一)
参考资料: 1. https://www.linux.com/learn/tutorials/796387-beginning-git-and-github-for-linux-users/ 2. h ...
- 使用 GIT 获得Linux Kernel的代码并查看,追踪历史记录
Linux kernel 的官方 GIT地址是: http://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git 可以从这个地 ...
随机推荐
- DirectX 11---从空间变换来看3D场景如何转化到2D屏幕
DirectX 11---从空间变换来看3D场景如何转化到2D屏幕 在看<Introduction to 3D Game Programming with DirectX 11>的时候,发 ...
- C语言基础 - 输出1-100万之间的素数
其实这个很简单 代码 网上也一大堆... //判断素数 BOOL isPrime(int num) { for (int i = 2; i <= sqrt(num); i++) { //能整除则 ...
- Spring源码情操陶冶-AbstractApplicationContext
前言-阅读源码有利于陶冶情操,本文承接前文Spring源码情操陶冶-ContextLoader 约束:本文指定contextClass为默认的XmlWebApplicationContext Abst ...
- PDF安全模式破解的简单办法
网上下电子书时,经常会遇到 电子书被加密的情况,此时读者将无法进行标亮,加注释等基本的操作.网上的方法都是建议下个 PDFPasswodRemove 的软件,麻烦而且软件不好用.经各种研究,尝试,发现 ...
- Windows Server 2008 配置IIS+PHP
问题: 最近要上线一个PHP写成的MVC项目,发现Windows Server 2008安装的还是PHP5.2,很多语法不支持. 尝试的一些解决方案: 1.将PHP升级为5.6,但是需要做好IIS和P ...
- 计时器C#
用于测某一方法执行所用的时间: Stopwatch sw = new Stopwatch(); sw.Start(); //功能代码块 sw.Stop(); long totalTime = sw.E ...
- storm从入门到放弃(二),任务分配过程-核心机密
背景:目前就职于国内最大的IT咨询公司,恰巧又是毕业季,所在部门招了100多个应届毕业生,本人要跟部门新人进行为期一个月的大数据入职培训,特此将整理的文档分享出来. 原文和作者一起讨论:http:// ...
- Java中使用POI读取大的Excel文件或者输入流时发生out of memory异常参考解决方案
注意:此参考解决方案只是针对xlsx格式的excel文件! 背景 前一段时间遇到一种情况,服务器经常宕机,而且没有规律性,查看GC日志发生了out of memory,是堆溢出导致的,分析了一下堆的d ...
- RabbitMQ入门-消息派发那些事儿
在上篇<RabbitMQ-高效的Work模式>中,我们了解了Work模型,该模型包括一个生产者,一个消息队列和多个消费者. 我们已经通过实例看出消息队列中的消息是如何被一个或者多个消费者消 ...
- windows下Ubuntu虚拟机联网配置 + Ubuntu虚拟机代理配置
Ubuntu虚拟机网络连接方式设置: http://blog.csdn.net/u013052460/article/details/50039937 or http://www.gezila.com ...