ファイルの場所を変えるだけでなく、同じコミットでファイルの内容を更新したり、 ファイルの名前を変更したりすることもできます。
Moving a file to a new location on GitHub Enterprise Server
ヒント:
- アクセス権のないリポジトリのファイルを移動しようとした場合は、プロジェクトがあなたのユーザー アカウントにフォークされ、変更のコミット後には元のリポジトリにプル リクエストを送信できます。
- 画像など、ファイルによってはコマンドラインから移動しなければならない場合があります。 詳細は「コマンドラインを使用してファイルを新しい場所へ移動する」を参照してください。
- リポジトリに保護されたブランチがある場合、GitHubを使ってその保護されたブランチ中のファイルを編集したり、保護されたブランチにファイルをアップロードしたりすることはできません。 詳しい情報については保護されたブランチについてを参照してください。
GitHub Desktopを使って、変更を新しいブランチに移動させてコミットできます。 詳しい情報については「プロジェクトに対する変更のコミットとレビュー」を参照してください。
-
リポジトリで、移動するファイルを見つけます。
-
ファイルビューの右上の隅で、 をクリックしてファイルエディタを開きます。
-
ファイル名のフィールドで、以下のガイドラインに従ってファイルの名前を変更します。
-
ファイルをサブフォルダに移動するには、移動先のフォルダの名前を入力して、最後に
/
を入力します。 新しいフォルダ名が、ナビゲーション階層リンクで新しいアイテムになります。 -
ファイルの現在位置より上位のディレクトリにファイルを移動するには、ファイル名フィールドの先頭にカーソルを置いてから、
../
と入力して 1 階層完全に上に移動するか、親フォルダの名前を編集する場合はBackspace
キーを押します。- ページの下部で、ファイルに対して行った変更を説明する短く分かりやすいコミットメッセージを入力してください。 コミットメッセージでは、複数の作者にコミットを関連づけることができます。 詳しい情報については「複数の共作者を持つコミットの作成」を参照してください。
- コミットメッセージフィールドの下で、コミットを追加を現在のブランチか新しいブランチから選択してください。 現在のブランチがデフォルトブランチなら、コミット用に新しいブランチを作成してからPull Requestを作成すべきです。 詳しい情報については「新しいプルリクエストの作成」を参照してください。
- [Propose file change] をクリックします。
-
コマンドラインを使用してファイルを新しい場所へ移動する
コマンドラインを使用してリポジトリ内でファイルを移動するには、元の場所でファイルを削除してから、新しい場所に追加します。
多くのファイルは GitHub Enterprise Server で直接移動できますが、画像など一部のファイルは、コマンドラインで移動する必要があります。
この手順は、以下が済んでいることを前提としています。
- GitHub Enterprise Serverにリポジトリが作成されているか、他の人が所有する、あなたがコントリビュートしたい既存のリポジトリがあること。
- そのリポジトリを手元のコンピュータにクローンしていること。
-
リポジトリをクローンするときにコンピュータのローカルに作成したディレクトリ内で、新しい場所にファイルを移動します。
- ターミナルターミナルGit Bashを開いてください。
-
git status
を使用して、ファイルの古い場所と新しい場所をチェックします。$ git status > # On branch your-branch > # Changes not staged for commit: > # (use "git add/rm
..." to update what will be committed) > # (use "git checkout -- ..." to discard changes in working directory) > # > # deleted: /old-folder/image.png > # > # Untracked files: > # (use "git add ..." to include in what will be committed) > # > # /new-folder/image.png > # > # no changes added to commit (use "git add" and/or "git commit -a") -
コミットに備えてローカルリポジトリにファイルをステージングしてください。これにより古い場所のファイルが削除 (
git rm
) され、新しい場所にファイルが追加 (git add
) されます。$ git add . # ファイルをローカルリポジトリに追加し、コミットするためにステージします。 # ファイルをステージから降ろすには、'git reset HEAD YOUR-FILE' を使います。
-
git status
を使用して、コミットのステージされた変更を確認します。$ git status > # On branch your-branch > # Changes to be committed: > # (use "git reset HEAD
..." to unstage) > # > # renamed: /old-folder/image.png -> /new-folder/image.png # コミットするためにステージされた変更を表示します。 -
ローカルリポジトリでステージングしたファイルをコミットしてください。
$ git commit -m "Move file to new directory" # 追跡された変更をコミットし、リモートリポジトリへのプッシュに備えます。 # このコミットを削除してファイルを変更するには、'git reset --soft HEAD~1' を使い、コミットしてからファイルを再度追加してください。
-
GitHub Enterprise Serverのインスタンス へ、ローカルリポジトリの変更をプッシュします。
$ git push origin your-branch