ps:没有一边操作一边记录,可能有个别地方权限设置有点问题请注意

软件安装

安装Python setuptoolssudo apt-get install python-setuptools

安装easy_installaptitude install python-setuptools

安装git和apachesudo apt-get install git apache

配置git服务器

安装gitosis

git clone git://eagain.net/gitosis.git

cd gitosis

sudo python setup.py install

添加用户git

sudo adduser \

--system \

--shell /bin/sh \

--gecos 'git version control' \

--group \

--disabled-password \

--home /home/git \

git

生成本机密钥

切换到个人机,如果已有~/.ssh/id_rsa.pub略过此步

ssh-keygen -t rsa

上传密钥到服务器临时目录 scp ~/.ssh/id_rsa.pub 用户名@主机:/tmp

初使化gitosis

切回到服务器

sudo -H -u git gitosis-init < /tmp/id_rsa.pub

修改post-update权限

sudo chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update

clone gitosis管理平台

切换到本地

git clone git@主机名:gitosis-admin.git

cd gitosis-admin

到此git服务器配置完成,以下是git服务器的一些常用管理。

添加用户

要添加的用户在电脑上运行ssh-keygen -t rsa生成id_rsa.pub发送给git管理员

git管理员将用户的id_rsa.pub复制到gitosis-admin下的keydir目录下,将文件名修改为要添加的用户名

git管理员修改gitosis-admin目录下的gitosis.conf文件,在要授权的项目下的members一行添加该用户名,中间以空格隔开

上传修改

cd gitosis-admin

git add gitosis.conf

cd keydir

git add {用户的id_rsa.pub文件名}

git commit -m "添中用户XXX"

git push

创建项目的git版本库

修改gitosis.conf文件

cd gitosis-admin

vim gitosis.conf

在文件最后添加以下内容[group test]

members = {要授权的用户,以空格分隔}

writable = test

提交修改

git add gitosis.conf

git commit -m "添加项目test的配置"

git push

创建项目库

mkdir test

git init

touch README

git add README

git commit -m '创建项目'

git remote add origin git@{你的域名}:test.git

git push -u origin master

安装trac

安装Genshi wget http://ftp.edgewall.com/pub/genshi/Genshi-0.6.tar.gz

tar xzvf Genshi-0.6.tar.gz

cd Genshi-0.6

sudo python setup.py install

安装本地化的模块 Babel。以支持国际化

easy_install babel

安装Trac

wget http://ftp.edgewall.com/pub/trac/Trac-0.12.2.tar.gz

tar xzvf Trac-0.12.2.tar.gz

cd Trac-0.12.2

sudo python setup.py install

集成trac和apache

在web根目录下创建trac目录

cd /var/www

sudo mkdir trac

sudo chown www-data:www-data trac

添加trac虚拟主机配置

cd /etc/apache/conf.d

sudo vim trac

在vim中插入以下配置

DocumentRoot "/var/www/trac"

ServerName trac.{你的域名}

SetHandler mod_python

PythonInterpreter main_interpreter

PythonHandler trac.web.modpython_frontend

PythonOption TracEnvParentDir /var/www/trac

PythonOption TracUriRoot /

PythonOption PYTHON_EGG_CACHE /tmp/egg-cache

重启apache

sudo /etc/init.d/apache2 restart

接下来访问http://trac.{你的域名},如果看到“Available Projects”字样,就说明配置成功了。

建立项目

cd /var/www/trac

trac-admin test initenv

chown -R www-data.www-data test

然后访问http://trac.{youhost}/test,即可看到Trac的主界面了!

添加用户

cd /var/www

htpasswd -c .htpasswd admin

如果已经有.htpasswd文件(第二次添加用户)则去掉-c

修改虚拟主机配置DocumentRoot "/var/www/trac"

ServerName trac.{你的域名}

SetHandler mod_python

PythonInterpreter main_interpreter

PythonHandler trac.web.modpython_frontend

PythonOption TracEnvParentDir /var/www/trac

PythonOption TracUriRoot /

PythonOption PYTHON_EGG_CACHE /tmp/egg-cache

AuthType Basic

AuthName "My Trac Server"

AuthUserFile /var/www/.htpasswd

Require valid-user

集成trac和git

安装trac-git的插件, 项目地址为: http://trac-hacks.org/wiki/GitPlugin

easy_install http://github.com/hvr/trac-git-plugin/tarball/master

更新trac配置

cd /var/www/trac/

vim trac.ini

在文件最后加上[trac]

# simple single-repository configuration

repository_dir = /var/git/Test.git

repository_type = git

## the following settings are only supported for plugin version 0.11 or later

[git]

## let Trac cache meta-data via CachedRepository wrapper; default: false

cached_repository = true

## disable automatic garbage collection for in-memory commit-tree cache; default: false

persistent_cache = true

## length revision sha-sums should be tried to be abbreviated to (must be >= 4 and <= 40); default: 7

shortrev_len = 6

## (0.12.0.3+) minimum length for which hex-strings will be interpreted as commit ids in wiki context; default: 40

wiki_shortrev_len = 7

## executable file name (in case of doubt use absolute path!) of git binary; default: 'git'

git_bin = /usr/src/git-dev/git

## (0.12.0.5+) define charset encoding of paths stored within git repository; default: 'utf-8'

git_fs_encoding = latin1

## (0.12.0.3+) enable reverse mapping of git email addresses to trac user ids; default: false

trac_user_rlookup = true

## (0.12.0.3+) use git-committer id instead of git-author id as changeset owner; default: true

use_committer_id = false

## (0.12.0.3+) use git-committer timestamp instead of git-author timestamp as changeset time; default: true

use_committer_time = false

设置test.git目录权限让apache的www-data用户可以访问

cd /home/git/repositories

sudo chmod a+r test.git

刷新trac看下效果吧。

linux trac apache,Ubuntu下集成Apache+Trac+Git相关推荐

  1. Ubuntu下配置Apache的Worker模式

    其实Apache本身的并发能力是足够强大的,但是Ubuntu默认安装的是Prefork模式下的Apache.所以导致很多人后面盲目的去 安装lighttpd或者nginx一类替代软件.但是这类软件有一 ...

  2. Ubuntu下安装Apache+PHP+Mysql

    Ubuntu下安装 apache+php+mysql文本服务器! ------------------------------------------------------------------- ...

  3. wireshark使用教程 linux,Linux入门教程:ubuntu下安装wireshark(以及配置非root),这个强大的工具可以捕...

    Linux入门教程:ubuntu下安装wireshark(以及配置非root),这个强大的工具可以捕 Wireshark是世界上最流行的网络分析工具.这个强大的工具可以捕捉网络中的数据,并为用户提供关 ...

  4. linux 自动降频,Linux资格认证:Ubuntu下对CPU进行降频

    这两天CPU温度超高,为了解决这个问题,先是找了两块以前台式机上的风扇(一个CPU,一个机箱风扇),和一条USB延长线.接好以后运行了一段时间,发现效果很不明显,大概降了有1度吧,还不知道是不是因为自 ...

  5. Linux(CentOS、Ubuntu)下,磁盘分区、挂载

    文章目录 Linux(CentOS.Ubuntu)下,磁盘分区.挂载 分区的方式: Linux分区 [lsblk] [fdisk] [mkfs] [mount] [umount] [/etc/fsta ...

  6. linux系统(ubuntu)下安装exe文件

    linux系统(ubuntu)下安装exe文件 昨天将家中的旧笔记本翻出来安装了ubuntu20.04.1,想在电脑中安装exe文件时,不能直接打开. 于是借鉴网络中的方法(https://blog. ...

  7. ubuntu 下安装apache服务器

    [系统版本]Ubuntu/Linaro 4.6.3-1ubuntu3 [apache版本]apache-httpd-2.2.23 [安装要点] Overview for the impatient安装 ...

  8. ubuntu下搭建apache web服务器,运行cgi配置

    WEB服务器搭建 所需资源下载地址:https://download.csdn.net/download/pjzz__/10548569 一:解压 1.现在/usr/local目录下创建这四个目录 a ...

  9. apache php linux 安全,Centos7环境下的apache和php安全设置及优化 | 彬菌

    版权声明:转载原创文章请以超链接形式请注明原文章出处,尊重作者,尊重原创! 恰饭广告 PHP环境设置: 编辑配置文件 vim /etc/php.ini 以下内容有则修改,无则添加 expose_php ...

最新文章

  1. Html一修改就会自动刷新,web 前端修改 自动刷新 插件使用 liveReload
  2. linux下多线程实现服务端
  3. java swt 双屏_Java中AWT、Swing与SWT三大GUI技术的原理与效率差异
  4. 利用python画混淆矩阵
  5. 66319d电源使用说明书_电热水壶怎么使用?电热水壶烧不开水的问题是什么?
  6. 一款简单实用的桌面电子邮件客户端
  7. 2018 A Sparse Topic Model for Extracting Aspect-Specific Summaries from Online Reviews 稀疏主题模型学习笔记
  8. memcached的缺点
  9. RocketMQ源码解析-Producer消息发送
  10. KMP算法代学习之(二)代码深入学习
  11. libvirt 创建的文件
  12. Silverlight入门:第五部分 - 整合其它控件
  13. python分页查询_python | MySQL分页查询优化
  14. SPSS 性别卡方分析
  15. SHELL第一天课堂练习
  16. Android高德地图点击大头针更换大头针图片
  17. IOS开发百度地图API入门到精通-用点生成路线,导航,气泡响应
  18. 手机静音状态下也让播出声音
  19. 51单片机的仿真实验——1602显示屏显示万年历与温度
  20. Neutron的介绍

热门文章

  1. 靶场发展态势③美国防部赛博安全靶场(IAR/CSR)
  2. [笔记] GPGPU-SIM的使用说明(一)
  3. Qt探索之旅(五)简单实现Mynotepad
  4. very very good,Java面试宝典+Java核心知识集
  5. 开源app后台开源框架集合 java
  6. 有哪些大数据书籍推荐 如何系统掌握大数据
  7. qt获取网卡流量_智能手机变成台式电脑的无线网卡来使用并连接WIFI上网的方法...
  8. 手机APP界面设计尺寸笔记
  9. 深入分析:代理游戏真的可以赚钱吗?
  10. c语言中用了continue头文件,c语言中continue用法是什么?