2011-07-31 22 views
62

私はGit/Githubを使い慣れています。私はいくつかの助けが必要です。 ファイルの名前をREADMEからREADME.mdに変更したいと思います。 "change-z-index"と呼ばれるリポジトリは1つだけです。Gitでファイル名を変更

1)私が開いて、そのようログイン:

ssh -T [email protected] 

をそして私は私のパスフレーズを入力します。

2)私はそのようなファイルの名前を変更しよう:

git mv README README.md 
git commit -m "renamed" 
git push origin master 

それは私に悪いソースを言ってエラーが発生します。

私は最初に自分のレポを選択する必要があると思う...それは "change-z-index"です。私はマニュアルを何度も読んだことがありますが、やり方はまだ分かりません。

+0

'READMEは間違いなくgitの制御下にありますか?あなたが得ているエラーは、 'README'が存在しないか、gitのインデックスにないことを示唆しています。 –

+0

@Charles Bailey Githubのウェブページにアクセスしたときに私のレポにreadmeファイルがあります –

+0

githubの詳細はわかりませんが、ファイルの名前、ローカルクローン、またはgithubサーバー自体の名前を変更しようとしています? –

答えて

108

GitHubはシェルアクセスを提供していないので、最初にどのようにログインしたのか不思議です。

$ ssh -T [email protected] 
Hi username! You've successfully authenticated, but GitHub does not provide 
shell access. 

リポジトリをローカルで複製し、そこに変更を加え、変更をGitHubにプッシュする必要があります。

$ git clone [email protected]:username/reponame.git 
$ cd reponame 
$ git mv README README.md 
$ git commit -m "renamed" 
$ git push origin master 
+11

自分自身のようなnoobsのために、git mv'が自動的にあなたのコンピュータ上のファイルの名前を変更する_を追加します。 'git mv'を使う前にファイルを別の名前で保存しようとしましたが、この愚かな間違いのために' fatal:destination exists'というエラーが発生しました。 – MichaelChirico

25

あなたはgitmvのコマンドを使用してファイル名を変更することができます:あなたのファイルがインデックスに実際にあるか、コミットかどうかを確認するためにgit statusを行い

$ git mv helo.txt hello.txt 

$ git status 
# On branch master 
# Changes to be committed: 
# (use "git reset HEAD <file>..." to unstage) 
# 
# renamed: helo.txt -> hello.txt 
# 

$ git commit -m "renamed helo.txt to hello.txt" 
[master 14c8c4f] renamed helo.txt to hello.txt 
1 files changed, 0 insertions(+), 0 deletions(-) 
rename helo.txt => hello.txt (100%) 
+1

これは私にエラーをもたらします:悪いソース、ソース= README、宛先= README.md –

+0

github.comリポジトリまたはローカルリポジトリの名前を変更しようとしていますか? – jaredwilli

+0

github上で名前を変更しようとしている場合は、ローカルリポジトリ$ rm file_nameから削除する必要があります。コミットしてから、そのファイルを変更したい名前の下のレポに追加してコミットします。送信元ファイルと送信先ファイルが一致しないため、エラーが発生しています。私はそれがとにかく何と考えています... – jaredwilli

3

$ git mv file_from file_to 

例。

初心者がインデックス/ステージング領域を誤解するのは簡単です。

私はそれを「進行中のピンボード」とみなしています。私はaddする必要があります前にピンボードにファイルをcommit(すなわち、完全なピンボードのコピー)することができます、私はpinboardを更新する必要があり、私も意図的にそれからファイルを削除する必要があります単にファイルを作成、編集、削除しても、ピンボードには影響しません。それは「ストーリーボード」のようなものです。

編集:他の人も触れたように、ローカルで編集を行い、githubで直接編集するのではなく、更新されたレポをプッシュする必要があります。

1

現在のディレクトリにないREADMEファイルを呼び出す場合など、ターゲットファイルが見つからないか存在しないため、 "Bad Status"が表示されます。

+0

これは私の問題でした。私は、現在のディレクトリをファイルの場所に変更するのを忘れていました。 – TheIT

41

なお、3月15、2013年、あなたはmove or rename a file directly from GitHubできる:

(あなたも、GitHubのに戻ってそのレポ、git mv xxgit pushのクローンを作成する必要はありません!)

renaming

You can also move files to entirely new locations using just the filename field.
To navigate down into a folder, just type the name of the folder you want to move the file into followed by / .
The folder can be one that’s already part of your repository, or it can even be a brand-new folder that doesn’t exist yet!

moving

+3

GitHubで編集可能なファイルに対してのみ動作します。画像ファイルなどのファイルではありません。 – A9S6

+0

@ A9S6とにかくその内容は(テキストとして)表示されないので、そんなことは意味をなさない。 – VonC

+4

はい、少なくとも名前の変更は許可する必要があります:) – A9S6

3

私はチュートリアルを通過する同様の問題がありました。

# git mv README README.markdown 

致命的な:悪いソース、ソース= README、先は= README.markdown

私は、ソース・ファイル内のファイルタイプが含ま:

# git mv README.rdoc README.markdown 

をし、それが完全に働きました。変更をコミットすることを忘れないでください:

# git commit -a -m "Improved the README" 

時にはそれが私たちを怒らせるような単純な小さなものです。 LOL

関連する問題