


How to deploy Git server on Linux to make your code management more efficient
Git is a distributed version control system that allows you to collaboratively develop and manage code on different devices. If you want to set up a Git server on Linux so that your team can easily share and synchronize code, then this article is for you. We will introduce you how to install Git-related software on Linux, how to use Gitosis to manage users and warehouses, and how to use SSH to securely access Git servers. Whether you are a Linux novice or a Git master, this article can help you quickly set up a Git server and make your code management more efficient.

Build environment:
Server CentOS6.6 git (version 1.8.3.1)
Client Windows10 git (version 2.11.1.windows.1)
1. Install Git related software
Linux is the server-side system, Windows is the client system, and Git is installed respectively
Install server:
[root@linuxprobe ~]# yum install -y git [root@localhost ~]# git --version //安装完后,查看 Git 版本 git version 1.8.3.1
Install client:
Download Git for Windows, address: https://git-for-windows.github.io/
After installation, you can use Git Bash as the command line client.
$ git --version git version 2.11.1.windows.1 //安装完之后,查看Git版本
Install Gitosis
[root@linuxprobe ~]# cd software/ [root@linuxprobe software]# git clone https://github.com/res0nat0r/gitosis.git [root@linuxprobe software]# yum install python-setuptools -y [root@linuxprobe software]# cd gitosis [root@linuxprobe gitosis]# sudo python setup.py install
The following message appears indicating that the installation was successful
Using /usr/lib/python2.6/site-packages Finished processing dependencies for gitosis==0.2
2. Create a git user on the server side to manage the Git service
[root@linuxprobe ~]# id git //查看git用户是否存在 id: git: no such user [root@linuxprobe ~]# useradd git [root@linuxprobe ~]# echo "123" | passwd --stdin git [root@linuxprobe ~]# su - git //切换到git用户下
3. Configure public key
Configure the manager on Windows. The git server needs some managers. By uploading the public key of the developer machine to the server, add it as the manager of the git server and open the git command line
$ ssh-keygen -t rsa //一直回车,不需要设置密码 ~ scp ~/.ssh/id_rsa.pub git@192.168.34.184:~ //复制到git服务器上
4. Configure gitosis
Use git user and initialize gitosis
[root@linuxprobe ~]# cd .ssh [root@linuxprobe ~]# gitosis-init Initialized empty Git repository in /home/git/repositories/gitosis-admin.git/ Reinitialized existing Git repository in /home/git/repositories/gitosis-admin.git/ [root@linuxprobe ~]# chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update //添加权限
Clone gitosis-admin on the Windows machine to the administrator host
$ git clone ssh://git@192.168.34.184:22/gitosis-admin.git $ cd gitosis-admin $ ls $ gitosis.conf keydir
gitosis.conf: git server configuration file
keydir: stores the client public key
Configurationgitosis.confFile
$ vim gitosis.conf [gitosis] [group gitosis-admin] #组名称 members = yueyong@SHA2-001 #组成员 writable = gitosis-admin #项目名称 [group test] //这里添加了"test"项目组,上传到个git服务器 members = yueyong@SHA2-001 writable = test
Create a local test warehouse on the Windows administrator machine and upload it to the git server
$ git config --global user.name "Your Name" //第一次提交需要设置个人信息,设置用户名和邮箱 $ git config --global user.email "email@example.com" $ cd ~/repo $ mkdir test $ git init $ tocuh readme.txt
Submit to remote server
$ git add . $ git commit -a -m 'init test' $ git remote add repo git@192.168.186.129:test.git //repo 远程库的名称,可以换成任意名称 $ git push repo master //上传本地所有分支代码到远程对应的分支上
The server will automatically create a test warehouse
[git@repositories]# pwd /home/git/repositories [git@linuxprobe repositories]$ ls gitosis-admin.git test.git
5. Add other git user developers
As the number of the company's development team continues to increase, it is troublesome to manually add the developer's private key to /home/git/.ssh/authorized_keys. The administrator of the above Windows machine collects the private key id_rsa.pub file of other developers. , and then transmitted to the server. After configuration, the user will obtain project permissions and can pull and push projects from the remote warehouse to achieve joint development projects.
$ cd ~/gitosis-admin/keydir $ mv ~/id_rsa.pub zhangsan@SHA2-002.pub //修改公钥为主机名.pub $ vim gitosis.conf [group test] writable = test members = yueyong@SHA2-001 zhangsan@SHA2-002 //添加成员 $ git add . $ git commit -m "add zhangsan@SHA2-002 pub and update gitosis.conf" $ git push repo master
After the push is completed, the newly added developers can develop the project. Subsequent additions of personnel can be added in this way. The developers can directly clone the warehouse.
git clone git@192.168.34.184:/home/git/repositories/test.git 报错问题:ERROR:gitosis serve main repository read access denied 根据这个报错,可以看出key是没问题的,通过排查,发现不应该把这个/home/git/repositories/test.git写全, git clone git@192.168.34.184:test.git 这样就可以了。
The above is the detailed content of How to deploy Git server on Linux to make your code management more efficient. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



DeepSeek is a powerful intelligent search and analysis tool that provides two access methods: web version and official website. The web version is convenient and efficient, and can be used without installation; the official website provides comprehensive product information, download resources and support services. Whether individuals or corporate users, they can easily obtain and analyze massive data through DeepSeek to improve work efficiency, assist decision-making and promote innovation.

There are many ways to install DeepSeek, including: compile from source (for experienced developers) using precompiled packages (for Windows users) using Docker containers (for most convenient, no need to worry about compatibility) No matter which method you choose, Please read the official documents carefully and prepare them fully to avoid unnecessary trouble.

Gate.io is a popular cryptocurrency exchange that users can use by downloading its installation package and installing it on their devices. The steps to obtain the installation package are as follows: Visit the official website of Gate.io, click "Download", select the corresponding operating system (Windows, Mac or Linux), and download the installation package to your computer. It is recommended to temporarily disable antivirus software or firewall during installation to ensure smooth installation. After completion, the user needs to create a Gate.io account to start using it.

Solution to permission issues when viewing Python version in Linux terminal When you try to view Python version in Linux terminal, enter python...

BITGet is a cryptocurrency exchange that provides a variety of trading services including spot trading, contract trading and derivatives. Founded in 2018, the exchange is headquartered in Singapore and is committed to providing users with a safe and reliable trading platform. BITGet offers a variety of trading pairs, including BTC/USDT, ETH/USDT and XRP/USDT. Additionally, the exchange has a reputation for security and liquidity and offers a variety of features such as premium order types, leveraged trading and 24/7 customer support.

Ouyi OKX, the world's leading digital asset exchange, has now launched an official installation package to provide a safe and convenient trading experience. The OKX installation package of Ouyi does not need to be accessed through a browser. It can directly install independent applications on the device, creating a stable and efficient trading platform for users. The installation process is simple and easy to understand. Users only need to download the latest version of the installation package and follow the prompts to complete the installation step by step.

How to automatically set the permissions of unixsocket after the system restarts. Every time the system restarts, we need to execute the following command to modify the permissions of unixsocket: sudo...

Ouyi, also known as OKX, is a world-leading cryptocurrency trading platform. The article provides a download portal for Ouyi's official installation package, which facilitates users to install Ouyi client on different devices. This installation package supports Windows, Mac, Android and iOS systems. Users can choose the corresponding version to download according to their device type. After the installation is completed, users can register or log in to the Ouyi account, start trading cryptocurrencies and enjoy other services provided by the platform.
