2017-07-13 11 views
0

新しいリモートリポジトリを作成した後、すべてのローカルリポジトリファイルをこの新しいリモートリポジトリに追加、コミット、プッシュしました。gitリポジトリ間での切り替えのトラッキング

git add -A 
git commit -m "all files added" 
git push newRepo master 

私がこれを実行する前に、ほとんどのファイルを追跡しないで残しながら、ほとんどのファイルに変更を加えずに別のリポジトリにプッシュしていました。

> git status 

On branch master 
Your branch is ahead of 'origin/master' by 2 commits. 
    (use "git push" to publish your local commits) 
nothing to commit, working tree clean 

は今私のローカルリポジトリが先oldRepo 2コミットし、変更のあるnewRepoとローカルリポジトリの間で追跡されているように見えます。 oldRepoとローカルレポの間のトラッキングに戻すにはどうすればよいですか?

したがって、2つのリモートリポジトリがあります:newRepoとoldRepo +私のローカルリポジ localとoldRepoの間を追跡する必要があります。

答えて

1

ローカルブランチトラックremote/branchを作るためには、単に

git branch -u remote/branch branch 

を行います。

--set-upstream-to

+0

:git branch branch_name --set-upstream-to your_new_remote/branch_nameしかしgitの状態は元に戻っていません。私はリモートの変更を今すぐ取り除く必要があると思います –

+0

誤った構文を使用しました。 'git branch -u your_new_remote/branch_name branch_name'にする必要があります。 – destoryer

+0

それは、ここから動作します:https://stackoverflow.com/questions/4878249/how-do-i-change-the-remote-a-git-branch-is-tracking –

0

元のリポジトリを削除する場合は、originが古いリポジトリの名前であればgit remote remove originを実行できます。新しいリポジトリのミラーとして古いリポジトリを保持したい場合は、オリジナルのコミットを押すことができます:git push origin master

これが役に立ちます。

+0

3つのリポジトリ、2リモートおよびローカル1があり、Iは、ローカルリポジトリとoldRepo(リモート)との間に追跡します。 –

+0

現時点では、ローカルとnewRepo(リモート)の間でトラッキングしていると思います –

0

非常に簡単な手順: -

オープンあなたはこの種のコンテンツ

[core] 
     repositoryformatversion = 0 
     filemode = true 
     bare = false 
     logallrefupdates = true 
     ignorecase = true 
     precomposeunicode = true 
[remote "origin"] 
     url = <new_repo> 
     fetch = +refs/heads/*:refs/remotes/origin/* 
[branch "master"] 
     remote = origin 
     merge = refs/heads/master 
[user] 
     email = <local_user> 
     name = Atul Agrawal 

~                              
~       

変更古いURLへの原点のURLが表示されます

git config -e 

コマンドプロンプトまたはターミナルと入力し、このファイルを保存します。古いリポジトリを設定します。 branchデフォルトはブランチをチェックアウトする場合は

関連する問題