2017-07-28 1 views
0

こんにちは私は本当に奇妙な問題があります。NetBeamsでGitHubのマージしたソースファイルを削除

私はこのGitHubのすべてのものに本当に新しいので、いくつかのものを試していました。 基本的に何が起こったのですか、私はNetbeamsのプロジェクトを持っていて、私のGitHubを投稿したかったのです。だからGithubのリポジトリを作成し、それにファイルを追加したかったのです。

私はNetbeamsに入り、Gitリポジトリを初期化しました。 その後、私はGitに行きました - > Commit その後、私はすべてのものをプッシュしようとしましたので、リモート - >プッシュ 何がうまくいかないのか分からず、何かがマスター - >マスターかsometigそういうわけで、今は分かりません。

しかし、事実は失敗しました。だから私は何とかプルをするのはいいアイデアだと思っています。これはまた、それが間違っていた場所です。すべてのものをクリックして終了したら、Rebase/Mergeしたいかどうか聞いてきたウィンドウがありました。 Rebaseをクリックしました。その後、別のウィンドウがポップアップしてチェックアウトの競合について何かを伝えていたので、私は[元に戻す]をクリックして突然私のファイルがなくなった。

私はこれを再現することができました。基本的に私はプロジェクトを持っていて、GitHubで私の空のプロジェクトからプルします。私のファイルを元に戻す方法はありますか?

EDIT:

$ git status 
On branch master 
Your branch is up-to-date with 'origin/master'. 
Changes not staged for commit: 
    (use "git add <file>..." to update what will be committed) 
    (use "git checkout -- <file>..." to discard changes in working directory) 

     modified: nbproject/private/private.xml 

Untracked files: 
    (use "git add <file>..." to include in what will be committed) 

     nbproject/project.properties 

no changes added to commit (use "git add" and/or "git commit -a") 

chceckoutメッセージ:コンソール

4b83b06 (HEAD -> master, origin/master) [email protected]{0}: pull --no-rebase --progress origin: Fast-forward 
    d47acf2 [email protected]{1}: 
    4b83b06 (HEAD -> master, origin/master) [email protected]{2}: commit: Wa 
    d47acf2 [email protected]{3}: checkout: moving from HEAD to master 
    d47acf2 [email protected]{4}: checkout: moving from master to origin/master 
    d47acf2 [email protected]{5}: rebase finished: returning to refs/heads/master 
    d47acf2 [email protected]{6}: checkout: moving from master to d47acf26594fc3d07b7709ff38a56284267ab993 
    330a8a3 [email protected]{7}: commit (initial): 

Gitリポジトリstausからの出力ファイルを取り戻すため

$ git checkout 330a8a3 
error: Your local changes to the following files would be overwritten by checkout: 
     nbproject/private/private.xml 
Please commit your changes or stash them before you switch branches. 
error: The following untracked working tree files would be overwritten by checkout: 
     nbproject/project.properties 
Please move or remove them before you switch branches. 
Aborting 
+0

端末を開きます。 'git reflog'と入力すると、rebase前の前回のコミットの' git checkout'が返されます – merlin2011

+0

Windowsで何とかできますか? –

+0

GitはWindows上で動作します。すべてのコマンドはWindowsでも実行されます。私はWindows上で 'git-bash'を覚えています。 – merlin2011

答えて

0

が、彼らはの一部となっているしなければなりませんリベースを実行する前に "コミット"してください。

$ git checkout 330a8a3 
error: Your local changes to the following files would be overwritten by checkout: 
nbproject/private/private.xml 
Please commit your changes or stash them before you switch branches. 
error: The following untracked working tree files would be overwritten by checkout: 
nbproject/project.properties 
Please move or remove them before you switch branches. 
Aborting 

をあなたの作業ツリーの変更を隠しておく必要があります:あなたが最初にコミットすることをチェックアウトしようとしたときにあなたが得たメッセージを修正するには 。 gitはあなたの作業ツリーでファイルnbproject/private/private.xmlが変更され、そのコミットをチェックすると最近の変更が失われるため、以前のコミットをチェックアウトするのを止めています。 git stashを実行すると、現在の作業ツリーファイルが保存されます。そのチェックアウトコマンドをもう一度実行すると、エラーなしで完了する必要があります。git checkout 330a8a3これで、元のファイル(少なくともリポジトリにコミットしたすべてのファイル)を見ることができるはずです。

この時点で、私は保管したいファイルを別の場所にコピーします。あなたがそのprivate.xmlファイルに行われた変更は、次の手順を実行します。 git checkout master git stash apply これは、あなたが最新のmasterにコミット見てみましょう、そしてあなたはgit stashを使用して、以前保存した「ロード」変更

+0

私はあなたを愛しています!私はそこからいくつかのファイルを削除しなければなりませんでしたが、とにかく重要ではなかったので、私はそれらを戻しました!!!これは大変ありがとうございます。私がしたことは、private.xmlなどのすべてのファイルを削除してからgit chceckout 330a8a3を実行してしまったのです! –

+0

私の答えを解決策としてマークしていただきありがとうございます。問題は解決してうれしいです! 'stash'コマンドに関するドキュメントを読むことをお勧めします。これは、' git'を使うときに絶対に重要なことです。 https://git-scm.com/docs/git-stash – instantepiphany

関連する問題