![見出し画像](https://assets.st-note.com/production/uploads/images/103737969/rectangle_large_type_2_4dbc930cb0fc8a392d98c419765f7d23.png?width=1200)
リモートリポジトリにプッシュする
わかったことがあったら追記していきます。(2023.04.23)
Git関連です。
すでに名詞動詞が特殊用語になっているので、翻訳すると
GitHubサーバー(とは限らないが)にローカルデータをアップロードする。
という意味です。
プッシュは公開というより、更新という意味合いの方が強いです。
![](https://assets.st-note.com/img/1682219000220-YrV0EHOz7A.png)
これをすることにより、URLを知っている人であれば誰でもリポジトリを取り込むことができます。
リポジトリ…領域。≒フォルダ
なお、公式説明書があるのでそちらの方がわかりやすいかもしれないです。
リモートリポジトリを削除する
削除の方法は簡単で、GitHubのリモートリポジトリが掲載されているページのsettingsタブからいけるDangerZoneの「Delete this repository 」ボタンを押すだけです。
削除してもローカルリポジトリにはリモートリポジトリ情報が残されているため、CLIでそれの削除もできます。
リンク切れお気に入りが存在していて運営しづらいといった感じなので、
削除しなくても大丈夫だったりします。(CLI操作の時に見辛い)
リモートリポジトリ自体の削除は元に戻せない動作です。
issue(質問掲示板)とかfork(他人によるシステムの改善コードの提案)なども削除されます。
とはいえ、リモートリポジトリの削除はローカルリポジトリには影響しないのでこのプッシュ云々記事をすべて読み終わる前に自分であれこれ試して削除するみたいな方法が一番わかりやすいんじゃないかなと思いました。
公開する
GitHubDeskTopの場合、`ctrl + p` のショートカット、あるいは
![](https://assets.st-note.com/img/1682222826062-HfOitFHgQL.png?width=1200)
からリポジトリを公開できます。
![](https://assets.st-note.com/img/1682223393481-SusqzGC8Lq.png?width=1200)
許可したメンバーのみが見ることができます。
OFFだとURLを知っていれば誰でも見れるようになります。
なお、GitHubの公開ページはブラウザの検索結果に表示されます。
「Keep this code private 」は
ここ最近、無課金ユーザーでも扱えるようになりました。
このPrivateとPublicはsettingsのDangerzoneで後から変更可能です。
![](https://assets.st-note.com/img/1682223872022-FHfcb1zBBw.png?width=1200)
という項目が増えて、公開ページをブラウザで見ることができます。
ショトカはctrl+Shift+Gです。
項目の保護をする
不特定多数の前に出すので、削除や変更されたら困る部分を保護します。
公開ページのsettings->Branches->Add branch protection rule に進む。
保護したいブランチ名を入力して、ブランチごとにルールを設定します。
Require a pull request before merging はmainには必須です。
要約すると、「マージの前にプルリクエスト飛ばせ」という意味。
更新してもいいか、管理者にお伺いを立てるということ。
プッシュする
公開後に、公開済みのリポジトリを更新するのをプッシュといいます。
プッシュの場合
①フィッチして、ローカルリポジトリをリモートリポジトリの内容に更新
②プッシュする
という工程があります。
①の時、リモートの内容→ローカルに上書き保存されます。
この時、同じファイル名で中身が違うファイルがあると衝突が発生します。
衝突内容を手で修正してフィッチを終わらせます。
![](https://assets.st-note.com/img/1682225276556-ZHy9lmfsZ1.png?width=1200)
プッシュの動作はこのボタンを押して、フィッチが発生した場合はフィッチを行うだけで
あとは自動でやってくれます。
衝突についてはこちらから
どのように公開されるのか
GitHubDeskTopではこうしてたけどGitHubにあがるとどうなるのか、
どう見えるのか。
公開(ctrl+p)したときのブランチがdefaultブランチになる
公開ページのトップ表示がそのブランチになります。
mainだったらmainだし、別のブランチに切り替えてた場合はそのブランチになります。
![](https://assets.st-note.com/img/1682226108566-yNEfyewIXN.png)
commitしたときのSummaryがファイルの最終更新箇所に表示される
![](https://assets.st-note.com/img/1682226175370-DsdOrxSLCf.png)
![](https://assets.st-note.com/img/1682226157292-4THZ97aXqI.png?width=1200)
最新版のcommitのDescriptionがトップ表示される
![](https://assets.st-note.com/img/1682226900992-JOAR48IlSc.png?width=1200)
![](https://assets.st-note.com/img/1682226958010-mDx1OICDjj.png?width=1200)
commitした内容のみ公開される
![](https://assets.st-note.com/img/1682226812957-y4FhEpc3xx.png)
![](https://assets.st-note.com/img/1682226779554-QFfakuEQvd.png)
ローカルリポジトリの最上のフォルダにあるreadmeファイルは自動でトップ表示される
![](https://assets.st-note.com/img/1682228423524-BIrc35ey1S.png?width=1200)
mdでもtxtでも表示。
なお、readme.md > readme.txt の優先度で表示される。
readmeという名前でないと駄目。