https://www.linux.com/learn/how-run-your-own-git-server
위 글을 참고하였으며
필자는 GCE에 git server를 설치하였다
--- SSH key 생성 및 서버에 등록 ---
# 서버에서 다음을 수행
sudo apt-get install git-core
sudo useradd -m -s /bin/bash git
# 로컬에서 다음을 수행
ssh-keygen 대신 XSHELL에서 RSA 키 생성 (git_rsa_2048) (패스워드는 없이 하자, 그렇지 않으면 git push 할때마다 작성해야함)
내보내기를 통해 git_rsa_2048.pem과 git_rsa_2048.pub 파일을 저장
- GCE에 SSH public key를 등록 (필자의 다른 포스트에 자세한 방법이 포스팅 되어있음, GCE - Metadata - SSH 키 탭에서 가능)
- 로컬머신(일반적으로 윈도우즈)에서는 %사용자 디렉토리%/.ssh 디렉토리에, 위 두 파일을 저장해주자
이제 아래 커맨드를 통해 GCE 서버의 git 계정에 접속할 수 있다
ssh -i ~/.ssh/git_rsa_2048.pem git@your-own-server
--- SSH config ---
위 글을 참고하여, SSH 클라이언트(일반적으로 윈도우즈일 것이다)에서
~/.ssh/config에 ssh host와 identity file을 세팅해주자
config을 작성한 후부터는 -i 옵션 없이 git 계정에 접속할 수 있다
ssh git@your-own-server
ssh가 안될경우, -v 옵션을 붙여서 디버깅해보자
ssh -v git@your-own-server
--- Remote Repository 생성 ---
ssh git@your-own-server 접속
# 서버에서 다음을 수행
mkdir -p /home/git/push_test.git
cd $_
git init --bare
--- local repository 생성 ---
# 로컬에서 다음을 수행
mkdir push_test
cd $_
git init
commit 하기위한 파일을 하나 생성한다 (example: main.py)
git add .
git commit -m "Initial commit"
--- push test ---
git remote add origin git@your-own-server:push_test.git # 경로는 git 홈디렉토리에 있는 디렉토리이다
git push origin master
성공적으로 push 될 것이다
실패한다면 local repo에서 commit을 했는지 확인해보자
git clone git@your-own-server:push_test.git
clone도 잘 작동한다
생각보다 간단하게 git-core 패키지를 통해 git server를 설치할 수 있었다
'Linux' 카테고리의 다른 글
SSH Options, config (SSH 키, 개인 키) (0) | 2018.06.21 |
---|---|
Xilinx Gnome-power error (0) | 2018.04.17 |
[linux] ia32-libs - ubuntu 최신버전 (>=14.04) (0) | 2018.03.28 |
[Linux] 한글 인코딩 (1) | 2018.03.21 |
[Linux] sudo path 설정방법 (0) | 2018.03.20 |
WRITTEN BY
- hojongs
블로그 옮겼습니다 https://hojongs.github.io/