기계적 인조 인간

자식 서버를 설정하는 방법

다각화되는 요즘 무선 환경의 '3대 트렌드'

다각화되는 요즘 무선 환경의 '3대 트렌드'

차례:

Anonim

Git 호스팅과 관련하여 다양한 옵션을 사용할 수 있습니다. GitHub, Gitlab 및 Bitbucket은 널리 사용되는 솔루션이지만 자체 Git 서버를 실행하는 것도 고려해야합니다.

Git 서버를 설정하면 공급자의 무료 요금제 한없이 개인 리포지토리를 만들 수 있습니다.

이 가이드에서는 Linux에서 베어 Git 서버를 설정하는 방법에 대해 설명합니다. 이 설정은 리포지토리가 적고 공동 작업자가 기술에 정통한 경우에 좋습니다. 그렇지 않으면 Gitea, Gogs 또는 Gitlab과 같은 자체 호스팅 git 응용 프로그램 설치를 고려해야합니다.

Git 서버는 원격 Linux 시스템이나 로컬 시스템에 설치할 수 있습니다.

Git 서버 설정

첫 번째 단계는 서버에 Git을 설치하는 것입니다.

sudo apt update && sudo apt install git

CentOS 서버에 git 패키지를 설치하려면 다음을 입력하십시오.

sudo yum install git

다음으로 Git 리포지토리를 관리 할 새 사용자를 만듭니다.

sudo useradd -r -m -U -d /home/git -s /bin/bash git

사용자 홈 디렉토리는 /home/git 설정되어 있습니다. 모든 저장소는이 디렉토리에 저장됩니다. 사용자 "git"의 비밀번호를 설정하지 않았습니다. 로그인은 ssh 키를 통해서만 가능합니다.

su 명령을 사용하여“git”사용자로 전환하십시오.

sudo su - git

다음 명령을 실행하여 SSH 디렉토리를 작성하고 올바른 권한을 설정하십시오.

mkdir -p ~/.ssh && chmod 0700 ~/.ssh

인증 된 사용자의 SSH 키를 보유 할 ~/.ssh/authorized_keys 파일을 작성하십시오.

touch ~/.ssh/authorized_keys && chmod 0600 ~/.ssh/authorized_keys

그게 다야. 서버 설정이 완료되었습니다. 이제 첫 번째 Git 리포지토리를 만들 준비가되었습니다.

비어있는 새 저장소를 시작하려면 다음 명령을 실행하십시오.

git init --bare ~/projectname.git

원하는대로 디렉토리 이름을 지정할 수 있습니다. 중요한 것은“git”사용자 홈 디렉토리 아래에 저장소를 작성하는 것입니다.

Initialized empty Git repository in /home/git/projectname.git/

로컬 Git 리포지토리 구성

로컬 자식 변경 사항을 Git 서버로 푸시하려면 로컬 사용자 SSH 공개 키를 원격 "git"사용자의 authorized_keys 파일에 추가해야합니다.

cat ~/.ssh/id_rsa.pub

출력은 다음과 같아야합니다.

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDd/mnMzHwjUzK8g3ldfsfRpJuC16mhWamaXRk8ySQrD/dzpbRLfDnZsLxCzRoq+ZzFHGwcQlJergtergdHGRrO8FE5jl3IWRRp+mP12qYw== [email protected]

새로운 SSH 키 쌍을 생성하려면 다음 명령을 사용하십시오.

ssh-keygen -t rsa -b 4096 -C "[email protected]"

위의 cat 명령의 출력을 복사하고 Git 서버 콘솔로 돌아갑니다.

서버에서 텍스트 편집기를 열고 로컬 시스템에서 복사 한 공개 키를 ~/.ssh/authorized_keys 파일에 붙여 넣습니다.

sudo nano /home/git/.ssh/authorized_keys

전체 공개 키 텍스트는 한 줄에 있어야합니다.

우리는 Git 패키지가 이미 로컬 컴퓨터에 설치되어 있다고 가정합니다. 그렇지 않은 경우 이전 섹션에서 설명한 것과 동일한 방법으로 설치하십시오.

cd /path/to/local/project

자식 저장소를 초기화하십시오:

git init.

마지막 단계는 git remote를 로컬 저장소에 추가하는 것입니다.

git remote add origin git@git_server_ip:projectname.git

git_server_ip 를 Git 서버 호스트 이름 또는 IP 주소로 바꾸는 것을 잊지 마십시오.

모든 것이 올바르게 설정되었는지 확인하려면 테스트 파일을 작성하십시오.

touch test_file

스테이징 영역에 변경 사항을 추가하십시오.

git add.

변경 사항을 커밋하십시오.

git commit -m "descriptive message"

로컬 저장소 변경 사항을 원격 저장소로 푸시하십시오.

git push -u origin master

모든 것이 올바르게 설정되면 출력은 다음과 같아야합니다.

Counting objects: 3, done. Writing objects: 100% (3/3), 218 bytes | 218.00 KiB/s, done. Total 3 (delta 0), reused 0 (delta 0) To git_server_ip:projectname.git * master -> master Branch 'master' set up to track remote branch 'master' from 'origin'.

새로운 공동 작업자를 추가하려면 공개 SSH 키를“git”사용자의 ~/.ssh/authorized_keys 파일에 복사하십시오.

동일한 단계를 사용하여 새 리포지토리를 만들 수 있습니다. git remote를 로컬 저장소에 추가하기 전에 원격 저장소가 존재해야합니다.

결론

이 튜토리얼에서는 개인 Git 서버를 설정하고 리포지토리를 만드는 방법을 보여주었습니다.