CentOS Stream 8
Sponsored Link

Git : Gitolite : ユーザーを登録する2021/06/18

 
Gitolite にユーザーを新規登録します。
[1] 任意のホスト上の任意の登録したいユーザーで SSH 鍵ペアを生成しておきます。
[cent@node01 ~]$
ssh-keygen -f ~/.ssh/id_cent

Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/cent/.ssh/id_cent.
Your public key has been saved in /home/cent/.ssh/id_cent.pub.
The key fingerprint is:
SHA256:7b28jyjI57L7dmhekzSBT342pDOyuyvtExthNRGkf9w cent@node01.srv.world
The key's randomart image is:
.....
.....
[2] 登録したいユーザーで生成した SSH 公開鍵を、Gitolite 管理者に渡します。
SSH 公開鍵を受け取った Gitolite 管理者は、以下のようにしてユーザーの公開鍵を登録します。
以上でユーザーの登録が完了となります。
[gitolite3@dlp ~]$
whoami

gitolite3
[gitolite3@dlp ~]$
# 受け取った公開鍵は [id_cent.pub]

total 8
drwxrwxr-x. 5 gitolite3 gitolite3  44 Jun 18 00:54 gitolite-admin
-rw-r--r--. 1 gitolite3 gitolite3 575 Jun 18 00:58 id_cent.pub
-rw-------. 1 gitolite3 gitolite3  12 Jun 18 00:53 projects.list
drwx------. 4 gitolite3 gitolite3  51 Jun 18 00:53 repositories

[gitolite3@dlp ~]$
mv id_cent.pub ~/gitolite-admin/keydir/

[gitolite3@dlp ~]$
cd ~/gitolite-admin/keydir

[gitolite3@dlp keydir]$
git add id_cent.pub

[gitolite3@dlp keydir]$
git commit -m "Add User cent"

[master 1ad511f] Add User cent
 1 file changed, 1 insertion(+)
 create mode 100644 keydir/id_cent.pub
[gitolite3@dlp keydir]$
git push origin master

Enumerating objects: 6, done.
Counting objects: 100% (6/6), done.
Delta compression using up to 2 threads
Compressing objects: 100% (4/4), done.
Writing objects: 100% (4/4), 824 bytes | 412.00 KiB/s, done.
Total 4 (delta 0), reused 0 (delta 0), pack-reused 0
To ssh://GitServer/gitolite-admin
   a1dac08..1ad511f  master -> master
[3] 登録したユーザーで、デフォルトで用意されているテスト用リポジトリ [testing] にアクセスできるか動作確認します。
[cent@node01 ~]$
vi ~/.ssh/config
# 新規作成 または 追記

# 任意の名前
host GitServer
    user gitolite3
    # Git サーバーのホスト名 または IP アドレス
    hostname 10.0.0.30
    port 22
    # 生成した鍵ペアの秘密鍵
    identityfile ~/.ssh/id_cent

[cent@node01 ~]$
chmod 600 ~/.ssh/config

[cent@node01 ~]$
git config --global user.name "cent"

[cent@node01 ~]$
git config --global user.email "cent@node01.server.world"
[cent@node01 ~]$
mkdir work

[cent@node01 ~]$
cd work

[cent@node01 work]$
git clone ssh://GitServer/testing

Cloning into 'testing'...
warning: You appear to have cloned an empty repository.

[cent@node01 work]$
total 0
drwxrwxr-x. 3 cent cent 18 Jun 18 01:01 testing
[cent@node01 work]$
cd testing
[cent@node01 testing]$
echo testfile1 > testfile1.txt

[cent@node01 testing]$
git add testfile1.txt

[cent@node01 testing]$
git commit -m "initial commit"

[master (root-commit) e11da74] initial commit
 1 file changed, 1 insertion(+)
 create mode 100644 testfile1.txt

[cent@node01 testing]$
git remote -v

origin  ssh://GitServer/testing (fetch)
origin  ssh://GitServer/testing (push)

[cent@node01 testing]$
git push origin master

Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 225 bytes | 225.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
To ssh://GitServer/testing
 * [new branch]      master -> master

[cent@node01 testing]$
git ls-files

testfile1.txt
関連コンテンツ