Git服务器宕机如何使用本地克隆仓库快速恢复Git服务器

栏目: 编程工具 · 发布时间: 6年前

内容简介:在工作中难免会出现代码仓库不能使用如:服务器磁盘跪了,高可用失效,地区级别的网络瘫痪,等等。之前也听过Git的一大亮点为去中心话的可靠代码仓库,那么问题来了:代码库真的宕机了,连不上了,在短时间内需要团队开发合并代码,协作开发,发布版本,笔者在网上搜索一圈没有人写过类似文章(也有可能大家都觉得这个太简单了),故写下自己意淫的方法,以及自己亲身的实施步骤:

在工作中难免会出现代码仓库不能使用如:服务器磁盘跪了,高可用失效,地区级别的网络瘫痪,等等。

之前也听过Git的一大亮点为去中心话的可靠代码仓库,那么问题来了:

代码库真的宕机了,连不上了,在短时间内需要团队开发合并代码,协作开发,发布版本,笔者在网上搜索一圈没有人写过类似文章(也有可能大家都觉得这个太简单了),故写下自己意淫的方法,以及自己亲身的实施步骤:

Git服务器宕机如何使用本地克隆仓库快速恢复Git服务器

好,现在问题来了,已经推不上去了,没办法和其他开发互动了

解决思路:

1.需要一个临时服务器来代替原先的宕机的服务器上面(可以是你自己的本机)保存代码库

2.在新的Git服务器上新建一个空的裸板库,以等把本机的代码推送上来

3.在新的Git服务器上新建推送用户

4.把本机的代码库的推送地址更换到新的服务器的地址

解决方法(以 Linux 服务器为例):

  • 安装GIT服务

CentOS

$ yum -y install git

Debian

$ apt-get -y install git

  • 添加git 用户

$ useradd git -d /home/git -s /bin/bash

$ passwd git

  • 切换到git用户下面新建裸板代码库

$ su - git

$ git init --bare demo.git

Initialized empty Git repository in /home/git/demo.git/

记住这个地址:/home/git/demo.git 这个就是新Git服务器的推送地址

  • 本地代码换源以及推送

读取origin的地址:

$ git remote show origin

Git服务器宕机如何使用本地克隆仓库快速恢复Git服务器

以上就是为原始的Git仓库地址,现在要把他改掉:

$ git remote remove origin

使用这条命令就把git的远端推送源删除了,然后,现在就需要把他换成新的Git服务器地址:

$ git remote add origin git@10.0.0.183:/home/git/demo.git

这里的git为你一开始新建的用户,如果是其他的用户,请自行更改,后面的格式为固定的服务器目录格式

Git服务器宕机如何使用本地克隆仓库快速恢复Git服务器

最后把本地的代码推送到新Git服务器上,如果有多个分支请一一推送

怎么样各位,久违的Git代码仓库又回来了,是不是很神奇!

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-02/157100.htm


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Essential C++中文版

Essential C++中文版

[美] Stanley B. Lippman / 侯捷 / 华中科技大学出版社 / 2001-8 / 39.80元

书中以4个面向来表现C++的本质:procedural(程序性的)、generic(泛型的)、object-based(个别对象的)、object-oriented(面向对象的),全书围绕着一系列逐渐繁复的程序问题,以及用以解决这些问题的语言特性。循此方式,读者不只学到C++的函数和结构,也会学习到它们的设计目的和基本原理。一起来看看 《Essential C++中文版》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

URL 编码/解码
URL 编码/解码

URL 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试