今までの自分のGithubの使い方
そもそも自分はポートフォリオをGithubに上げてましたが、
Web上から編集したり、その都度ファイルをFinderからアップロードして更新しているような有様でした。
本記事はそのレベルの方向けの内容です
xcodeと連携してpushやpullくらいできるよーという方には時間の無駄なので今すぐタブを閉じましょう
GitとSourceTreeの比較がよくわかる素晴らしい記事があったのと内容と全く関係ないわけではないので
・SourceTreeで、マージとリベースを行う - Qiita
この辺も見ておくとより理解が深まるかもです(mergeとrebaseは誰もが通る難関なので、、)
本来のGithubの使い方
Githubは本来
- xcodeなどのコーディングツールでコードを編集
- Githubとコーディングツールを連携するツール(またはterminal)で編集箇所を確認
- 上記のツールで編集をGithubのレポジトリ(大元のフォルダ的なもの?)に反映
- branchを立ててさらなる編集場所を提案(現場レベル)
という使い方をするべきであり、Githubサイト上でレポジトリをゴリゴリいじるものではないのですw
(分かっちゃいたけど力技の方が早いので自分はイジイジしちゃってました)
これじゃいかんのでちゃんと勉強することに。
xcodeとGithub上のレポジトリを連携
ダウンロード
この連携からの編集という作業はterminalでも出来ますが、ソフトの方が編集箇所の可視化具合がいいのでソフトで。
使うソフトはSourcetreeというものです。入れちゃいましょう
入れてからのアカウント作成までの手順は以下のどちらかを参照
こっちを試して
・MacでのSourcetreeセットアップとGitHub連携とプルリクエスト作成までの手順
だめそうならこっちを試しましょう
・Bitbucketを要求される場合
※ちなみにbitbucketはGithubと同様サービスでSourcetreeと開発元が同じなので無理くりすすめてるだけみたい
連携
今回はローカルファイルをGithubレポジトリと連携します
起動しとくもの
- Githubに出したい・編集したいファイル(Finder上)
- terminal
- Sourcetree
- xcode
※Githubレポジトリをsourcetreeで直接編集したい場合はこの記事を最後までやればいけちゃいます
・MacでのSourcetreeセットアップとGitHub連携とプルリクエスト作成までの手順
terminalで以下のコマンドを順次実行
$ cd Githubに出すファイルのプロジェクト(.xcodeproj)のディレクトリ
$ git init
Reinitialized existing Git repository in Githubに出すファイルのプロジェクト(.xcodeproj)のディレクトリ/.git/
ユーザ名noMacBook-Air:ディレクトリ名 ユーザ名
$ git remote add origin https://github.com/ユーザー名/レポジトリ名.git
解説
1行目:xcodeプロジェクトファイルのディレクトリを参照するようにします
2行目:そのディレクトリにGitのライブラリなどをぶち込んで、Gitのコマンドを使えるようにします
3行目:Gitを使えるようになったディレクトリとorigin以下で指定したGithub上のレポジトリを連携します
※追記
git remote add origin https://'github.user_name'@github.com/'github_user_name'/'repository_name'.git
や
sourcetreeのverアップデート
(どちらかまたは両方)
これをしないとうまく行かないという例があるようです(invalid username...
と出るらしい)
うまく行かなかった人は試してみてください
sourcetreeとローカルフォルダを紐付け
新規→既存のローカル....→作成を選択していきます
追加されたのでダブルクリックすると、新規ウィンドウが立ち上がります
remoteブランチにチェックアウト
※にこれを忘れてコミットやプッシュを行うと
remote: Invalid username or password.
と怒られるので注意してください。
- やり方
sourcetreeのリモート
->origin
->master
(ここ)をダブルクリックしてremoteのmasterブランチをチェックアウトします
Githubに反映
紐付けたローカルファイルのうち、変更・編集すると左下の作業ツリーのファイル
に出てきます
水色丸のチェックボックスをクリックすると作業ツリーのファイル
がIndexにステージしたファイル
になります
つまり、変更箇所があったファイル
からGithubにコミットするかもしれんファイル
になるわけです
左上のコミットを押すと、コミットする上での確認画面が出ます
コミットと同時にプッシュするのか(使い始めはとりあえずチェック入れときゃいい)
コミットした時のGithub上のコメントはどうするか(今回はUI Fixed
)
を設定してコミットします
Ⅳ, 反映しないフォルダを指定したい時
コミットする前に
高度な設定→編集(.gitignoreファイルを中身を反映したくないフォルダ名/*
にする)→OK
で反映しないフォルダを指定することが可能です
お疲れ様でした
参考文献
・MacでのSourcetreeセットアップとGitHub連携とプルリクエスト作成までの手順
・MacでのSourcetreeセットアップとGitHub連携とプルリクエスト作成までの手順(Bitbucketを要求される場合)
・githubを二段階認証に変更後に起こるエラーの対処方法 - Qiita
・SourceTreeで remote invalid username or password となってGithubと接続できない時の対策 - Qiita
・GitHub - SoucreTreeでGitHubにPUSHするとInvalid username or passwordになる|teratail
・SourceTree とGitHubの連携失敗を乗り越える、なおBitbucket - Qiita
・SourceTreeに怒られたときの対処方法 - Qiita
・Gitでやらかした時のための基本操作(Sourcetree編) - Qiita