LoginSignup
1
1

More than 1 year has passed since last update.

【git】会社のGithub git repository を自宅Linuxマシンにclone して開発する

Last updated at Posted at 2022-04-02

はじめに

会社のGithub git repository を自宅Linuxマシンにclone して開発するとします。そのとき、

  • 自分のアカウントを切り替えないと、自分の個人活動のアカウントで会社のgit repository に commit してしまいます。Pushは会社のアカウントでおこなわれているとしても、そのcommti tree に個人のアカウントがあることになり、恥ずかしい。
  • 会社のGithub にssh-key を登録しますが、それは個人のアカウントとは違います。切り替え作業無しで行いたい。

という課題があったのですが、普通に解決できたのでメモしておきます。
会社の仕事もLinuxマシンで開発できれば効率的で良いのだけれどね。

内容

1. 会社用のssh-key を用意して会社アカウントのGithub に登録する

普通に鍵を作ります。ファイル名を指定し、既存のものと区別するようにしましょう。

cd ~/.ssh
ssh-keygen -t ed25519 -C iam.slave@submissive.com -f salves_key_ed25519

パスフレーズは空でも大丈夫でした。公開鍵と暗号鍵ができてることを確認します。

Github に sign-in し、setting を選択します。このとき左側に表示される "ssh and GPA-" をから、新しい鍵を登録できます。先程作成した公開鍵をコピペします。

image.png

鍵の登録については、Github のページにあるマニュアルも参考になります。

2. 会社github repository にアクセス設定 (~/.ssh/config)

~/.ssh/config というファイルに設定を記入します。IndentifyFile で先程作成した秘密鍵を指定します。

Host github_submissive
  HostName github.com
  User git
  IdentityFile ~/.ssh/salves_key_ed25519
  IdentitiesOnly yes

アクセスできることを確認しましょう。

$ ssh -T git@github.com
Enter passphrase for key '/home/user/.ssh/slaves_key_ed25519':
Hi user! You've successfully authenticated, but GitHub does not provide shell access.

3. 会社github repository を cloneする

設定したssh の設定でclone します。

$ git clone github_submissive:TheCompany/mylabor.git

で、会社のGithub アカウントの TheCompany にある、mylabor.git をclone します。このとき、github_submissive として ~/.ssh/config で定義されている条件でrepository にアクセスします。

4. Local repository で会社のアドレスを指定する

この作業をしないと、clone したローカルのレポジトリで作業してcommit するときのユーザがデフォルトのユーザになってしまいます。ここでは、このレポジトリでのユーザが会社アカウントのユーザであることを定義します。clone したrepository に移動して、git config --local で定義します。

$ cd maylabor 
$ git config --local user.name iam.slave
$ git config --local user.email iam.slave@submissive.co.jp

この作業ディレクトリに ./git/configにファイルが作成されます。このファイルには remote origin なども書かれていますが、少なくともuser の定義があることを確認しましょう。

[user]
        name = iam.slave
        email = iam.slave@submissive.company.jp

以上で完了です。

普通に編集を行い、git add, git commit, git push ができるはずです。

まとめ

とりあえず、行いたいことができている感じです。何か不足があれば追記するつもりです。

以下を参考にしました。多謝。

(2022/04/02)

  • $ ssh -T git@github.com を追記 (2023/02/26)
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1