KOSEN{BLOG}について

GithubにXcodeから初めてソースコードを公開する手順

はじめに

GithubをXcodeで使いたいなと思ったので備忘録的に公開の仕方を紹介する。

使用したもの

  • macOSMojave
  • git version 2.16.2
  • vim
  • Xcode Version 10.0 (10A255)

GitHubのアカウント作成

公式GitHubサイト
ユーザーネームやパスワードを設定して簡単にアカウントが作成できる。
Githubとは
GitHubはGitを使ったバージョン管理サービスのことですが
Gitのサービス以外にも、多くの独自機能を追加しています。

ターミナルを起動


アプリケーション —> ユーティリティ —> ターミナル.app

gitの初期設定

ターミナルに以下を入力していく。
$ git config --global user.name "techiro"
$ git config --global user.email "***@gmail.com"
$ git config --list で現在の設定を確認

実行結果

credential.helper=osxkeychain
core.excludesfile=/Users/hiro/.gitignore_global
difftool.sourcetree.cmd=opendiff "$LOCAL" "$REMOTE"
difftool.sourcetree.path=
mergetool.sourcetree.cmd=/Applications/Sourcetree.app/Contents/Resources/opendiff-w.sh "$LOCAL" "$REMOTE" -ancestor "$BASE" -merge "$MERGED"
mergetool.sourcetree.trustexitcode=true
user.name=techiro
user.email=***@gmail.com
commit.template=/Users/hiro/.stCommitMsg
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
core.ignorecase=true
core.precomposeunicode=true

SSH鍵の設定

ssh用のディレクトリの制作

$ mkdir ~/.ssh/github

秘密鍵と公開鍵を作成

memo
ssh-keygenコマンドによって,秘密鍵と公開鍵を作成する
ssh-keygen -t rsa -b 4096 -C "***@gmail.com" -f ~/.ssh/github/id_rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/hirokazu/.ssh/github/id_rsa):
SSH Keyの保存先を聞かれている。/Users/hirokazu/.ssh/github/id_rsaでいいならそのままEnter。
パスフレーズを聞かれるので適当に入力する。 
memo
$ ssh-keygen -t rsa -b 4096 -C “***@gmail.com”ssh-keygen -t rsa -C $ “***@gmail.com” -f ~/.ssh/github/id_rsa` のちがいはセキュリティーが違う後者は甘い。
Your identification has been saved in /Users/hirokazu/.ssh//github/id_rsa.
Your public key has been saved in /Users/hirokazu/.ssh/github/id_rsa.pub.
The key fingerprint is:
SHA256:7***********/******************/****** ***@gmail.com
The key's randomart image is:
+---[RSA 4096]----+
| o* o.o |
| o o.oo..|
| o.*oo.....|
| o + o o. .|
| o o**. ... .|
| *****o |
|****o |
| . |
| o o |
+----[SHA256]-----+
鍵が生成されているか確認する。
$ ls ~/.ssh/github
id_rsa      id_rsa.pub
があればOK
公開鍵を確認
$ cat ~/.ssh/github/id_rsa.pub
ssh-rsa BBBBBBSLAJFJF~~~
~~~~ ==@gmail.com
この公開鍵をgithubに登録する。

SSH鍵の登録

gitHubにログイン 右上の設定ボタン -> 左カラムのSSH and GPG keys-> New SSH key
適当なタイトルと先ほど入手したkeyを入力して、
反映されました。

登録されているかターミナルから確認

$ ssh -T git@github.com -i ~/.ssh/github/id_rsa

The authenticity of host 'github.com (52.69.186.44)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)?  yes
yesを入力
Warning: Permanently added 'github.com,**.**.***.**' (RSA) to the list of known hosts.
```
警告:既知のホストのリストに 'github.com、**.**.***.**'(RSA)を恒久的に追加しました。
Enter passphrase for key '/Users/hirokazu/.ssh/github/id_rsa': (はじめに入力したパスフレーズを入力)

Hi techiro! You've successfully authenticated, but GitHub does not provide shell access.

これでgithubにアクセスすることができる。 アクセス方法は、
$ ssh -T git@github.com -i ~/.ssh/github/id_rsa
と入力してパスフレーズを入力すれば、
github hirokazu$ 
```
アクセスできた。

GitHubへのアクセスを簡単にする

memo
上記のssh -T git@github.com -i ~/.ssh/github/id_rsa
でもアクセスできるが、あまりスマートじゃない。

解決策

  • vimでファイルを編集
    • $vim ~/.ssh/configにアクセス
    • ここで注意するのがvimは普通のテキストエディタではないので操作方法が特殊であること。
vimを使ってファイルの編集の仕方
  • 編集画面が開いたらアルファベットの「i」を押す。
  • 画面下に–INSERT–と出ていればOK.
  • その状態でctrl+VでHost github.com IdentityFile ~/.ssh/github/id_rsaを貼付け。
  • escキーを押す
  • 画面下の–INSERT–が消えた状態で:wqと入力。
  • 編集終了
最後にできているか確認。
$ssh -T git@github.comを入力
memo
$ssh -T git@github.comは~/.sshにSSH keysを作成したときのコマンド 今回は、~/.ssh/githubにSSH keysを作成したのでこの作業が増えた。

GitHubのレポジトリを作成

toppageの右側にあるNewrepositoryをクリック
  • Repository name
  • Description
  • Publicを選択
  • Initialize this repository with a READMEはチェックしない
コピーする。

Xcodeで新規プロジェクトを作成

swift新規作成
以前ローカルレポジトリで管理していたので、すでに管理されているよと警告を受けた。
このままだとGitHubを使うことができないので、これを使えるようにする。

ここからこの解決方法

バージョン管理のタブに移動して右クリックすると
Create Remote…があるのでそれをクリック。
リモートネームとLocationを聞かれる。
Locationはコピーした。git
GitHubでコピーしたアドレスを貼り付ける。 そのままAdd
架空のGuthubかもしれんから注意してな
GitHubのアカウントにログイン。
ここのSSHkeyの入力に苦戦した。
  • 解決方法は、新しくSSHを作る。SSH Keyの新しいKeyの作成を選択。
これで、XcodeにGitHubを登録できた。 GitHubにPushを行う 完了

まとめ

バージョン管理システムであるGitをGitHubによって管理することで簡単にオープンソース化ができた。
これから共同のプロジェクトを進めていくときなどに重宝するだろうと思う。

参考文献

ドットインストール
Qiita

コメントを残す

メールアドレスが公開されることはありません。