tweeeetyのぶろぐ的めも

アウトプットが少なかったダメな自分をアウトプット<br>\(^o^)/

git mvでファイル名の変更してみる&その取り消しテスト

はじめに

git mvでファイル名の変更してみる&その取り消しテスト

git管理しているファイルをpush後に名前変えたいときって意外とめんどくさいんですねっていう自分メモ

名前変えてから取り消すながれ

  • 適当なファイルをpush
  • git mvでファイル名を変更
  • 変更の取り消しをしてみる
    • git reset HEAD 変更後ファイル名
    • git reset HEAD 変更前ファイル名
    • mv 変更後ファイル名 変更前ファイル名でファイル元に戻す

やってみる

適当なファイルをpush

適当なファイルをpushしてみます githubとかに適当なリポジトリを作ってみました https://github.com/tweeeety/git-test_git_mv

githubページでリポジトリ作成後

# mkdir git-test_git_mv

# cd git-test_git_mv

# touch git_mv_test.txt

# git init
Initialized empty Git repository in /home/hoge/github/git-test_git_mv/.git/

# git add git_mv_test.txt

# git commit -m 'first commit'

# git remote add origin git@github.com:tweeeety/git-test_git_mv.git

# git push -u origin master
git mvでファイル名を変更
# git mv git_mv_test.txt git_mv_test_rename.txt

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

変更したファイル名が合っていればいつもどおりcommit -> pushしましょう

変更の取り消しをしてみる

変更をステージするのはすぐできますが、取り消しはいくつか手順が必要です

git reset HEAD 変更後ファイル名
# git reset HEAD git_mv_test_rename.txt

# git status

# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       deleted:    git_mv_test.txt
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       git_mv_test_rename.txt

変更の取り消しはされましたが

  • git_mv_test.txtの削除
  • git_mv_test_rename.txt

みたいな形になってしまっているのでそれぞれを解消します

git reset HEAD 変更前ファイル名
# git reset HEAD git_mv_test.txt
Unstaged changes after reset:
M       git_mv_test.txt


# git status

# On branch master
# Changed but not updated:
#   (use "git add/rm <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#       deleted:    git_mv_test.txt
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       git_mv_test_rename.txt
mv 変更後ファイル名 変更前ファイル名でファイル元に戻す
# mv  git_mv_test_rename.txt  git_mv_test.txt

# git status
# On branch master
nothing to commit (working directory clean)

という感じで名前が元に戻りました!