在单位中,通常都标配了git服务器用来管理代码。

对于家庭或者小办公室,这种方式有点不经济。当然如果是开源项目就简单了,刚刚被微软收购的github是理想选择。但如果没有打算开源,我今天的话题可能对你有用。

我就属于喜欢在家中干活的那一类,以前常年开着一台电脑做下载,最近改了这个坏习惯。但是没有了长期开机的设备,也就没有了git server。

趁着周末,把一台老的路由器改了改,当成git server来用,感觉效果爆棚,不能不安利给大家。

硬件

  • 一台能够安装OpenWRT(或者Linux系统的)路由器,我用的是一台老设备,Netgear WND3700V1。
  • 视你日常工作量大小,准备一个空间足够的U盘,最好是高速的,当然这个高速是指能匹配路由器USB口的标准就足够。

系统软件

成文时,OpenWRT的版本是18.06.0,其它版本应当也可以,OpenWRT挺早就支持git软件包了。下载地址在:http://downloads.openwrt.org/。也可能是我的问题,但至少看起来,这样一个纯技术网站,不翻墙已经下载不到了。

因为各家路由设备的硬件复杂性,虽然都是同样的OpenWRT,不同的路由器仍然要下载自己硬件对应的版本。如果之前没有安装过OpenWRT的话,建议你在https://openwrt.org/toh/views/toh_fwdownload查询OpenWRT支持的设备列表,确认自己应当使用的版本。

OpenWRT的安装这里不讲,请参考官方相关文档。通常都是在自己路由器的管理界面使用软件更新功能,选择下载的固件文件,上传随后升级。

接着请根据自己家里网络的情况,配置上网设置各项目,保证基本路由功能工作正常。

管理路由器

OpenWRT18.06.0的默认管理方式是使用ssh,方法:ssh root@[IP地址]。根据路由器的FLASH大小,比较小的FLASH是默认没有WEB GUI界面的,比如我用的这台。所幸大多情况下使用命令行配置路由器效率更高,而且有些工作是使用GUI界面做不到的。

OpenWRT的默认账户用户名是root,没有密码,正常情况下第一次登陆会要求你修改密码。在一个连接公网的环境中,请尽早登陆修改密码。

配置镜像源

如果你不用翻墙就能访问官方的源服务器的话,请跳过这一节内容。

OpenWRT使用opkg工具来管理扩展包。因为前面所说的原因,需要配置使用镜像源来保证所需软件包的安装。

中间碰到一个小麻烦是国外的镜像服务器,基本都使用了https协议,OpenWRT不能直接支持。国内的镜像大多倒是http协议,但镜像中又缺乏一些驱动包,无法驱动U盘。

所以如果找不到更好的完整源的话,只好把变更源这样一件小事分成两步来做。

opkg的源配置文件路径为:/etc/opkg/distfeeds.conf,首先做一个备份,然后你可以使用你喜欢的编辑工具修改,我通常都是vi。

把distfeeds.conf文件的内容修改为:

src/gz openwrt_core http://openwrt.proxy.ustclug.org/releases/18.06.0/targets/ar71xx/generic/packages
src/gz openwrt_kmods https://downloads.lede-project.urown.net/snapshots/targets/ar71xx/generic/kmods/4.9.117-1-e017c397f3c6ba06dc921b136a63fb36
src/gz openwrt_base http://openwrt.proxy.ustclug.org/releases/18.06.0/packages/mips_24kc/base
src/gz openwrt_luci http://openwrt.proxy.ustclug.org/releases/18.06.0/packages/mips_24kc/luci
src/gz openwrt_packages http://openwrt.proxy.ustclug.org/releases/18.06.0/packages/mips_24kc/packages
src/gz openwrt_routing http://openwrt.proxy.ustclug.org/releases/18.06.0/packages/mips_24kc/routing
src/gz openwrt_telephony http://openwrt.proxy.ustclug.org/releases/18.06.0/packages/mips_24kc/telephony

这里面使用了两个源,分别是:http://openwrt.proxy.ustclug.org和https

把路由器改装成git服务器(OpenWRT环境的GIT服务器搭建)的更多相关文章

  1. 【转】手把手教你把Vim改装成一个IDE编程环境(图文)

    手把手教你把Vim改装成一个IDE编程环境(图文) By: 吴垠 Date: 2007-09-07 Version: 0.5 Email: lazy.fox.wu#gmail.com Homepage ...

  2. Vim改装成一个IDE编程环境

      1 写在前面   Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个 ...

  3. 04-手把手教你把Vim改装成一个IDE编程环境(图文)

    Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个好用的IDE是何等的重 ...

  4. 手把手教你把Vim改装成一个IDE编程环境(图文)

    http://blog.csdn.net/wooin/article/details/1858917

  5. 手把手教你把Vim改装成一个IDE编程环境(图文)【转】

    本文转载自: http://blog.csdn.net/wooin/article/details/1858917

  6. 把Vim改装成一个IDE编程环境

    一:安装中文帮助手册 1.  打开一个终端    2.下载vimcdoc-1.5.0.tar.gz        下载地址: http://nchc.dl.sourceforge.net/source ...

  7. 【git】 linux 环境安装git

    1 安装git依赖包 yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUti ...

  8. windows环境下,spring boot服务使用docker打包成镜像并推送到云服务器私有仓库

    最近在淘宝上学习springcloud教程,其中有几节课是讲解讲本地springboot服务打包成镜像并推送到云服务器私有仓库,但是教程里面用的事Mac环境,我的是Windows环境,而且课程里面没有 ...

  9. Git系列四之在本地服务器搭建gitlab仓库管理(centeros环境下)

    1.Git仓库管理 现在本地已经创建了git仓库,又在gitlab上创建了一个git仓库,并且让这两个仓库进行远程同步,这样gitlab仓库既可以备份也可以与他人协作管理远程仓库以及根据需要推送或拉取 ...

随机推荐

  1. using eclipse to write c programe 0

    参考:http://developer.51cto.com/art/200906/126363.htm http://www.cnblogs.com/feisky/archive/2010/03/21 ...

  2. NOIP2013 D1T3 货车运输 zz耻辱记

    目录 先来证明下lemma: 图上2点间最小边权最大的路径一定在MST上 感性理解下: 每次kruskal algo都连接最大的不成环边 此时有2个未联通的联通块被连起来. 那么考虑u, v两点的联通 ...

  3. 1.3 正则表达式和python语言-1.3.4使用 match()方法匹配字符串

    1.3.4使用 match()方法匹配字符串(第一次写博客,格式,述语有不当之处还请见谅)2018-05-08 Python 代码是以Jupyter Notebook编写的,主要写的是python3的 ...

  4. 09-Python入门学习-函数基础与参数

    一.函数基础 1.定义函数的三种形式 1.1 无参函数 def foo(): print('from foo') foo() 1.2 有参函数 def bar(x,y): print(x,y) bar ...

  5. elasticsearch 文档资料

    1.Function Score Query 自定义查询评分 https://www.elastic.co/guide/en/elasticsearch/reference/current/query ...

  6. HTML/CSS实现的一个列表页

    又到休息日,白天没事跟朋友去逛逛街,侃大山,晚上了,上网无趣,于是就想起该练练了, 这次是做了一个页面,最上面是一个banner 用到了一个jQuery的逻辑判断当banner初始top值小于wind ...

  7. Mysql初学入门

    最近研究了一下Mysql的初学应用,在此进行整理记录. 1.Windows系统下的安装 我用的是win10系统,在http://dev.mysql.com/downloads/mysql/ 下载相应版 ...

  8. 解决Django+Vue前后端分离的跨域问题及关闭csrf验证

      前后端分离难免要接触到跨域问题,跨域的相关知识请参:跨域问题,解决之道   在Django和Vue前后端分离的时候也会遇到跨域的问题,因为刚刚接触Django还不太了解,今天花了好长的时间,查阅了 ...

  9. python爬虫第三天

        DebugLog实战         有时候我们需要在程序运行时,一边运行一边打印调试日志.此时需要开启DebugLog.         如何开启:         首先将debugleve ...

  10. 前端知识之HTML内容

    web服务实质 浏览器发送请求 -->HTTP协议-->服务端接收请求 --> 服务端返回响应 --> 服务端把HTML文件内容发给浏览器 --> 浏览器渲染页面 imp ...