Git(7)プッシュするリモートリポジトリを変更する

ラベル: ,

前の関連記事:Git(6)PyCharmからGitHubにプッシュしてリモートリポジトリを作成


GitHubに作成したリモートリポジトリを削除して、ローカルディスクにリモートリポジトリに作り直すことにしました。この作業はPyCharmではできずTortoiseGitでの操作が必要でした。

どのリモートリポジトリにプッシュするかはローカルリポジトリのconfigファイルに登録されている


リモートリポジトリを削除してしまえば、プッシュするときにリモートリポジトリがないので新たに指定するようにダイアログがでるのかな、と思ったらそうはいきませんでした。

一度リモートリポジトリにプッシュすると、ローカルリポジトリにあるconfigファイルにリモートリポジトリの場所が登録されます。

Push failed: fatal: repository 'https://github.com/p--q/UnderGit.git/' not found

リモートリポジトリの登録の変更をしない限りリモートリポジトリを削除したところで、このようにリモートリポジトリがみつからないといわれて先に進めなくなります。

プッシュするリモートリポジトリを変更するにはconfigファイルの書き換えが必要です。

PyCharmでこれを書き換える方法はわかりませんでした。

Git(2)TortoiseGitでGitの設定を行うでやったように、ローカルリポジトリがあるフォルダで右クリック→TortoiseGit→設定、Gitで「ローカルリポジトリの設定を編集」をクリックするとconfigファイルが開きます。

[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
hideDotFiles = dotGitOnly
[branch "master"]
[remote "origin"]
url = https://github.com/p--q/UnderGit.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master

リモートリポジトリの場所は[remote "origin"]に書いてありますね。

このファイルの書き方を知っているのなら、[remote "origin"]あたりを編集すればよさそうですが、よく知らないのでこれをTortoiseGitで書き換えます。

プッシュするリモートリポジトリの登録を削除すればあとは新規作成と手順は同じ




ローカルリポジトリがあるフォルダで右クリック→TortoiseGit→設定、リモート。

この場面で「リモート」のところから「oirgin」を選択すると現在のリモートリポジトリのアドレスが表示されます。

「削除」をクリックするとこの登録が消去されます。

あとは新規にリモートリポジトリを作成する手順と同じです。

ローカルディスクにリモートリポジトリを作成する


ローカルディスクにリモートリポジトリを作成する方法もPyCharmではわからず、Git(3)既存のフォルダからローカルレポジトリとリモートレポジトリを作成と同様にしてローカルリポジトリを複製してリモートレポジトリを作りました。

ローカルレポジトリの名前に".git"を追加した名前の空フォルダをリモートレポジトリを置く場所に作成します。

C:\共有フォルダ\UnderGit.git を作成しました。

この空フォルダ内で右クリック→Gitクローン(複製)。


PyCharmのプロジェクトフォルダはLibreOfficeのマイマクロフォルダに設定しているので以下の場所になります。

C:\Users\ユーザー名\AppData\Roaming\LibreOffice\4\user\Scripts\python\UnderGit

これを複製してリモートレポジトリを作成するので「URL」に入力します。

「ディレクトリ」にはリモートレポジトリにするC:\共有フォルダ\UnderGit.gitを入力します。

複製先をリモートレポジトリにするので「Bareリポジトリにクローン」をチェックしておきます。

これで「OK」とするとC:\共有フォルダ\UnderGit.gitにローカルレポジトリの内容が複製されます。


このようなファイルやフォルダが作成されているはずです。

これでローカルディスクにリモートリポジトリが作成できましたが、この状態でPyCharmでプッシュしても"Can't push, because no remotes are defined"といわれてプッシュできません。

これもTortoiseGitを使ってリモートリポジトリにリモートリポジトリの場所を登録しないといけません。

Git(3)既存のフォルダからローカルリポジトリとリモートリポジトリを作成の「ローカルリポジトリからプッシュでリモートリポジトリへ内容を反映できるようにする」と全く同じやり方です。

TortoiseGitでプッシュに成功するとあとはPyCharmでもプッシュできるようになります。

次の関連記事:Git(8)NetBeans7.4のGitプラグインではコミットグラフの表示なし?

PR

0 件のコメント:

コメントを投稿