🕌

SourceTreeでどうやるかすぐ忘れるやつのメモ

2023/09/27に公開

SourceTreeでの操作

  • reset → コミットを右クリックで「"ブランチ名" をこのコミットまで戻す」
  • revert → コミットを右クリックで「コミット適用前に戻す...」
  • cherry-pick → コミットを右クリックで「チェリーピック」
  • rebase → コミットを右クリックで「リベース...」
  • squash → まとめたいコミットの1つ前(分岐元)を右クリックで「"ハッシュ" の子を対話形式でリベース」
    • ダイアログの下にある「過去を含めてsquahする」で対象を追加(押すたびに追加)
    • 「メッセージを編集」で編集してOKボタン
  • amend → コミットメッセージを入力する画面の右上、「コミットオプション」で「直前のコミットを上書き」にチェック

Gitコマンドのメモ

pushする前

  • git reset
    • オプションとしてsoft, mixed, hardの3つがあるが、手動で同じ状態にできるのでデフォルトのmixedを使えば良い
      • soft → commitのみ取り消し
      • mixed → commitとaddの取り消し
      • hard → 全部取り消して変更も破棄
    # 直前のコミット取り消し
    git reset HEAD^
    # コミットIDまで取り消し
    git reset <ハッシュ値>
    
  • git commit --amend
    • コミットメッセージの修正やadd忘れを追加
    git commit --amend -m "メッセージを修正"
    
    git add file
    git commit --amend --no-edit
    
  • git rebase
    • ブランチ元が進んでいる場合に繋げ直す
    git rebase <ブランチ>
    
  • git squash(rebase -i)
    # HEADから3つをsquash
    git rebase -i HEAD~3
    # まとめたいコミットの1つ前(分岐元)を指定でsquash
    git rebase -i <ハッシュ>
    

pushした後

  • git revert
    • 修正を元に戻すコミットを作成する
    git revert <ハッシュ>
    

その他

  • cherry-pick
    • 特定のコミット内容を現在のブランチに取り込み
    git cherry-pick <ハッシュ>
    

Discussion