`

Mac下搭建Git 本地库

git 
阅读更多
需求:使用闲置机器搭建一个项目组内部的Git Repository,以供项目组内部管理一些自己的小项目。

需求分解:
1、项目组成员可以通过clone,pull,push获取到服务器上的最新的代码。
2、项目组成员可以把本地的repository的代码推送到服务器上。
3、可以通过网页查看git本地库的状态。

实现过程:
1、在服务器上创建Git仓库。
mkdir git_repo/test.git
cd git_repo/test.git
git init –bare

创建完之后,test.git 下得到如下目录:


        本例中使用git协议(其他三种为local,ssl,http)作为传输协议,git传输协议的好处在于速度快。 使用Git协议,要求在服务器端启动一个特殊的守护进程来监听类似于SSH服务的特定端口(9418),另外,想要支持Git协议的仓库,还需要在仓库中创建git-export-daemon-ok文件,这是git协议提供服务的前提条件。
touch git-daemon-export-ok

sudo /usr/local/git/libexec/git-core/git-daemon –base-path=/Library/WebServer/Documents/ --syslog --verbose --pid-file=/var/run/git-daemon.pid --user=root --group=wheel --detach --enable=upload-pack --enable=upload-archive --enable=receive-pack

注: --base-pathz指定了Git仓库的根目录
    --user,--group指定了用户和用户组,

2、clone远程仓库到本地(默认使用git协议)
git clone git://<local-ip>/test.git

clone远程仓库,会在当前目录新加test目录

3.在本地仓库新加文件,并push到远程库
cd test
touch README
git add .
git commit –m “add README”

git remote add local git://<local-ip>/test.git
git push local master


4、新建一个本地库,添加文件并push到一个远程库
创建本地库
mkdir test2
git init
touch README
git add .
git commit –m “add README”


创建远程库
mkdir 
mkdir git_repo/test2.git
cd git_repo/test2.git
git init –bare
touch git-daemon-export-ok


把本地库内容推送到远程库
cd test2
git remote add local2 git://<local-ip>/test2.git
git push local2 master


5、为远程仓库配置网页,让用户可以通过网页查看远程库信息。
Git自带了一个叫做GitWeb的CGI脚本,用户可以通过如下的命令生成一个git repository的简单web界面。
git instaweb

该命令默认使用lighttpd作为轻量级服务器。Linux系统都默认安装了lighttpd服务,Mac因为预装了Ruby,可以使用webrick服务器,指定方法如下:
git instaweb --httpd=webrick

这会在 1234 端口开启一个 HTTPD 服务,随之在浏览器中显示该页,十分简单。关闭服务时,只需在原来的命令后面加上 --stop 选项就可以了
git instaweb --httpd=webrick --stop

  • 大小: 14.8 KB
分享到:
评论

相关推荐

    在 Ubuntu 下搭建 git gitosis.pdf

    在Ubuntu系统中搭建Git服务器,特别是使用gitosis作为版本控制系统管理工具,是一个常见的做法,尤其适合小型团队或个人开发者协作项目。以下将详细介绍这个过程。 首先,我们需要进行一些准备工作。在Mac上安装...

    SHOS搭建git服务器.pdf

    **一、搭建Git服务器的好处** 1. **安全性**:自建Git服务器可以更好地保护代码安全,避免因第三方服务故障导致的数据丢失。 2. **版本管理**:提供版本控制功能,便于进行代码回滚和指定版本操作。 3. **代码共享**...

    gitblit-1.8.0.zip下载

    要搭建Gitblit本地服务,你需要按照以下步骤操作: 1. **环境准备**: 确保你的系统已经安装了Java运行环境(JRE)。Gitblit依赖Java,所以这是必需的。 2. **下载Gitblit**: 访问Gitblit的官方网站或通过给定的...

    Mac版本 git安装包.zip

    本压缩包“Mac版本 git安装包.zip”提供了适用于Mac操作系统的Git安装程序,使得用户能够轻松地在本地环境中搭建Git环境。 Git的核心功能包括版本控制、代码差异比较、分支管理以及协同开发等。它允许开发者记录...

    git零基础实战

    - 本地Git服务器搭建方法。 - **课程目标** - 熟练掌握30个常用的Git命令。 - 理解Git的内部原理。 - 熟悉企业版本控制流程。 - 能够使用Git跟踪开源项目、与他人协作、管理自己的开发工作。

    Git权威指南PDF完整版

    第5篇 搭建Git服务器 第27章 使用 HTTP 协议/ 398 27.1 哑传输协议/ 398 27.2 智能 HTTP 协议/ 400 27.3 Gitweb 服务器/ 401 27.3.1 Gitweb的安装/ 402 27.3.2 Gitweb的配置/ 403 27.3.3 版本库的 Gitweb 相关设置/ ...

    gitblit-1.9.1.zip

    总的来说,Gitblit是企业内部搭建私有Git服务器的理想选择,它提供了一种简单有效的方式来管理和协作代码,同时保持了Git的强大功能。通过学习和掌握Gitblit,开发者和团队可以更好地利用Git进行版本控制,提高开发...

    PRO GIT.pdf

    Git的设计初衷是为了支持大规模项目,如Linux内核,它能够高效地处理大文件、大规模的代码库,并且支持高速的非线性开发流程。 ### Git基础知识 #### 安装与配置 在开始使用Git之前,首先需要在你的系统上安装它...

    git使用操作中文手册

    设计和搭建Git服务器的步骤。 **4.5 公共访问** 设置公共访问的策略。 **4.6 网页界面GitWeb** 提供了一个用于浏览Git仓库的Web界面。 **4.7 权限管理器Gitosis** 管理仓库访问权限的工具。 **4.8 Git进程**...

    git安装-使用中文手册chm

    最后,服务器搭建涉及到Git服务器的配置,如使用GitLab或GitHub等平台,或者自建Git服务器。这需要一定的网络和系统管理知识,但一旦配置好,就能提供稳定、安全的代码托管服务。 总之,本中文手册覆盖了Git的各个...

    git官方教程

    - **在服务器上搭建Git**:搭建Git服务器通常涉及到安装Git服务端软件、配置权限和SSH密钥等步骤。 - **第三方托管**:除了自己搭建服务器之外,还可以选择使用GitHub、GitLab等第三方服务提供商来托管Git仓库。 #...

    《Pro Git》---- 分布式版本控制系统

    用户可以通过多种方式安装Git,包括从源代码编译安装、在Linux/Mac/Windows系统上直接安装等。安装完成后,首次运行Git前还需要进行一些配置,如设置用户的姓名和电子邮件地址等。 ##### 3.2 基础操作 - **初始化...

    DVWA靶场搭建教程,网站搭建

    1. 服务器或本地机器:可以是Linux、Windows或Mac操作系统。 2. PHP环境:DVWA需要PHP运行环境,例如XAMPP或LAMP。 3. 数据库:MySQL,用于存储DVWA的应用数据。 4. Git:用于克隆DVWA的源代码仓库。 步骤1:安装...

    开始使用 Z 上的 Git 和 GitHub.pdf

    - **自托管服务**:组织可以选择自行搭建Git服务器来满足特定的安全和合规需求。 #### 四、在IBM Z系统上安装与使用Git IBM Z系统支持Git的安装和使用,可以通过以下步骤完成: - **需求**:确保系统已安装bash-4.3...

    Git教程 包含:快速入门、基础使用、进阶使用、服务器集成、一些常见的问题

    Git 是一个广泛使用的开源分布式版本控制系统,其设计目标是高效快速地处理各种规模的项目...服务器集成部分,特别是如何在CentOS服务器上搭建Git服务器,将进一步增强你对Git的运用,使你能够构建自己的代码托管平台。

    Mac开发环境搭建之免登录版sourceTree代码管理工具

    以下是使用SourceTree搭建Mac开发环境的一些关键知识点: 1. **Git和版本控制**:Git是一种分布式版本控制系统,用于跟踪对项目文件的修改。SourceTree作为Git的前端,提供了友好的图形界面,使得开发者无需记住...

Global site tag (gtag.js) - Google Analytics