はじめに
これまでWindowsからSmaba経由でファイルを編集し、その履歴をTortoisegitとGitLab(CE:Community Edition)で管理していました。
最近、Gitのデフォルトブランチをmasterからmainに変更になったことで不都合が起きていたので、Tortoisegitを使わずにサーバ上でgitコマンドを行うことにしました。
構成
- Debian bookworm - git 2.30.2 - gitlab-ce 16.10.1-ce.0
SSHキー作成とGitLabへの登録
SSHキーを作成します。
cd ~/.ssh ssh-keygen -t rsa -C 【メールアドレス】
秘密鍵のパーミッションを変更します。
デフォルトで既に600ですが、確認します。
chmod 600 gitlab20240327_rsa
公開鍵を登録します。
cat gitlab20240327_rsa.pub >> ~/.ssh/authorized_keys
GitLabに登録します。
・左上の自分のアイコンをクリックする。
・Edit Profile setting
・SSH Keys
・Add new key
・Titleを入力する。
・Keyにgitlab20240327_rsa.pubのファイル内容をコピペする。
・「Add key」をクリックする。
gitが自動で読み込むSSHキーのファイル名は下記です。
これ以外のファイル名で保存する場合は、設定が必要です。
どのファイルをデフォルトで読み込んでいるかは「ssh -Tvvv git@abcd.com」コマンドで確認できます。
・id_rsa.pub
・id_ecdsa.pub
・id_ed25519.pub
GitLabのサーバに使用するSSHキーを指定します。
vi ~/.ssh/config
内容は以下の通りです。
# GitLab Host test of abcd.com HostName abcd.com PreferredAuthentications publickey IdentityFile ~/.ssh/gitlab20240327_rsa User git
Gitの初期化など
Gitの初期化を行います。
デフォルトのブランチをmainに設定します。
cd /home/www/wsgi/project/ git init git init --initial-branch=main git switch --create main git config --global user.name "Taro Ultra" git config --global user.email "XXXX@abcd.com"
GitLabに新規プロジェクトを作成して、URL(git@abcd.com:emailaddoress/test.git)をコピーします。
・プロジェクトのページを開く。
・Code
・Clone with SSH
新規に作成したプロジェクトのデフォルトブランチがmainであることを確認します。
・プロジェクトのページを開く。
・Settings
・Repository
・Branch defaults
origin-testという名称でGitLabのサーバを登録して、接続できるか確認します。
名称は他と重複しないようにします。
git remote add origin-test git@abcd.com:emailaddoress/test.git ssh -Tvvv git@abcd.com
コミットとPushのテスト
コミットとPushのテストを行います。
cd /home/www/wsgi/project/ git status git add -A git commit -a -m"comment 1" -m"comment 2" git push --set-upstream origin-test main git log
次回からのpushは、以下で良いです。
git push origin-test main
その他のgitのコマンドです。
git diff --cached git diff git status git branch -a
Comments