`

Git服务器构建(Fedora16)

 
阅读更多

参考:
http://git-scm.com/book
所有操作都是root用户
1,安装
ssh远程登陆服务器,安装配置git服务器
yum install git-core openssh-server openssh-client

2,添加新用户git, 该用户将作为所有代码仓库和用户权限的管理者:
useradd -m git
passwd git
3,安装配置gitosis
安装pythontool,准备gitosis安装
yum install python-setuptools

gitosis会将git仓库放在 git用户home目录下的repositories中,
所以要事先建立一个该目录的链接使仓库放在自己的地方
mkdir /home/git/repositories
ln -s /home/git/repositories  /gitserver

然后以git身份登录服务器,
下载gitosis
git clone https://github.com/res0nat0r/gitosis.git
cd gitosis
sudo python setup.py install

3,在自己工作的电脑上生成ssh公钥,用scp拷贝到服务器
生成ssh公钥的命令:
ssh-keygen -t rsa
拷贝到服务器的命令:
scp .ssh/id_rsa.pub git@servername:/tmp
这里git是指git用户,servername就是服务器地址
4,在服务器上,切换到git用户
git用户操作服务器,改变公钥属性
   sudo chmod a+r /tmp/id_rsa.pub
   git gitosis-init < /tmp/id_rsa.pub
   sudo chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update
这时应该会生成一个gitosis-admin.git
5,在回到自己工作的电脑上来clone这个库
git  clone git@servername:/gitserver/gitosis-admin.git
   vim gitosis.conf  //修改配置文件
   git commit -am "test"   //此处的提交只是提交到本地,所以和远程务器是不同步的
   git remote add origin git@servername:/git/gitosis-admin.git   //增加远程服务器
   git push origin master  //将改变push  到远程务器上
如果这个不行,就用git push origin +master
6,在服务器新建一个库
首先在服务器端
cd /gitserver   //我的工程目录
      mkdir test.git
      git  init --bare
然后在工作电脑就可以clone了
git clone git@servername:/gitserver/test.git

git操作的一些命令:
git status  查看变动的文件
git diff --cached  查看已做的修改
git log  查看日志
git log -p 查看详细修改的日志
git revert  [commit ID] 撤消某次提交
git reset [commit ID]  回复当前分支到一个原先的版本。版本号可以用 git log 查看,也就是提交的 ID 号。在commit [ I D ]

想具体了解,请参考开头提到的那本书。后面我会写些读书笔记。

分享到:
评论

相关推荐

    git软件安装和学习指南,企业实战

    2. **克隆仓库**: 使用`git clone &lt;仓库URL&gt;`可以从远程服务器克隆一个项目到本地。 3. **添加文件**: 使用`git add &lt;file&gt;`将文件添加到暂存区,或者使用`git add .`添加所有修改过的文件。 4. **提交更改**: ...

    thesis_obs搭建_

    本主题将深入探讨如何在`OpenSUSE`系统上搭建`OBS`,以及利用它来实现Fedora平台的构建。 首先,`OBS`是`openSUSE`项目的一个重要组成部分,它提供了一个统一的平台,开发者可以在这个平台上编译、测试和发布跨多个...

    Python库 | dulwich-0.20.17-cp36-cp36m-manylinux2010_x86_64.whl

    4. **网络协议支持**:Dulwich库能够通过HTTP、HTTPS、SSH等协议与远程Git服务器通信。 5. **低级API**:Dulwich提供了一套低级API,允许开发者对Git的每个细节进行精确控制,同时也提供了高级API,简化了常见的Git...

    hudson 学习资料

    - **为 Hudson 准备构建服务器:** - **选择合适的硬件配置:** 根据项目规模和需求选择适当的服务器配置。 - **操作系统支持:** - Debian/Ubuntu - Red Hat/Fedora/CentOS - SUSE/OpenSUSE - **运行模式:**...

    jenkins-the-definitive-guide 英文文档

    从没有构建服务器,到开始夜间构建,再到引入基本的自动化测试,然后是收集度量数据,之后是更加重视测试,再引入自动化验收测试和更多的自动化部署,最终实现持续部署。 #### Jenkins工具配置 Jenkins的工具配置...

    fedora-devbox:Ansible剧本,用于基于Fedora 33设置开发环境

    【标题】:“fedora-devbox”是一个专门为...总之,“fedora-devbox”是一个强大的工具,它利用Ansible的自动化能力为Fedora 33构建了一个标准化的开发环境,无论是在本地笔记本还是远程服务器上,都能轻松复用和维护。

    irc3-fedora:用于 irc3 irc bot 的 Fedora 特定插件

    **irc3-fedora 插件详解** `irc3-fedora` 是一个专为 Fedora 设计的插件,用于 `irc3` IRC...它为开发者提供了一个与 Fedora 用户和项目互动的平台,同时也展示了如何使用 `irc3` 框架构建功能丰富的 IRC bot。

    构建MIPS交叉编译工具链,Mplayer,firefox.zip

    MIPS架构广泛应用于各种设备,如路由器、嵌入式系统和服务器等。为了在非MIPS平台上(例如x86或AMD64)为MIPS处理器编写和编译代码,我们需要创建一个交叉编译工具链。以下将详细讲解这个过程。 1. **交叉编译工具...

    dnsbridge:DNS 到 Docker 桥接

    它可以使用以下命令安装在 Fedora/RH 上: yum install -y git 构建和使用此软件的主要要求需要 root 访问权限,对于 RHEL7 Linux,此安装脚本将完成所有这些: ./requirements.sh 安装 此安装脚本假定以下内容...

    Jenkins+ansible自动部署

    - 构建成功的应用包会被发送到目标服务器。 #### 五、总结 Jenkins+Ansible 自动部署方案不仅提高了开发效率,还减少了人为错误,确保了部署的一致性和可靠性。通过上述步骤,你可以快速搭建起一套自动化部署环境...

    fcrepo-http-commons-4.0.0-beta-03.zip

    了解这些知识点后,开发者可以根据具体需求选择使用 Fedora Commons 构建数字存储解决方案,或者利用 EXT Direct Spring 来创建具有强大交互功能的 Web 应用。同时,开源社区的支持使得这些问题的解决变得更为便捷,...

    钉钉Linux版非官方

    在钉钉Linux版非官方应用中,JavaScript可能用于处理UI交互、网络请求以及数据管理等方面,结合HTML和CSS构建用户界面,实现与服务器的通信和数据同步。 "其它杂项"标签可能涵盖了这个项目中涉及的各种技术细节和...

    第01章 搭建开发环境.rar

    每种操作系统都有其优缺点,例如Windows易用性高,而Linux和macOS则更适合进行服务器端和开源项目的开发。 接下来,我们需要确定开发语言。假设你正在搭建一个Java开发环境,你需要安装JDK(Java Development Kit)...

    jenkins-2.176.1.noarch.rpm

    Jenkins 是一款开源的持续集成(Continuous Integration, CI)服务器,它被广泛应用于软件开发过程中,用于自动化构建、测试和部署任务。这个压缩包文件 "jenkins-2.176.1.noarch.rpm" 提供的是 Jenkins 的特定版本...

    continuous integration with hudson

    3. **集成环境配置**:支持多种构建工具如Maven、Ant等,以及版本控制系统如Subversion、Git等。 4. **通知机制**:可以通过邮件、RSS等方式发送构建状态通知。 5. **可扩展性**:通过插件系统支持功能扩展。 #### ...

    usbarmory-debian-imagebuilder:USB Armory 的镜像构建器,用于构建 Debian Jessie 镜像

    该程序可以在 Fedora 工作站或服务器上运行,前提是安装了debootstrap程序以及一些其他实用程序(见下文)。 该程序构建的图像与 USB Armory wiki 提供的说明基本兼容。 请参阅下面的使用说明。 要求 这些是执行此...

    jenkins-2.166.7z

    描述中提到的“rpm包和war包”意味着这个压缩文件内包含了两种不同类型的安装包:RPM 包适用于基于 RPM 的Linux 发行版(如 CentOS、Fedora),而 WAR 包则可以直接在支持 Java 的Web服务器上运行。 Jenkins 的核心...

    fedwidgets:为 Fedora 社区提供支持的 Web 应用程序

    FedWidgets 作为专门为 Fedora 社区设计的Web应用程序,很可能利用了Python的Django、Flask等框架,这些框架可以快速构建复杂、高性能的Web应用。 【描述】中提到的"fedora-widgets"可能是一个专门为Fedora操作系统...

Global site tag (gtag.js) - Google Analytics