
ã¯ã˜ã‚ã«
ã“ã‚“ã«ã¡ã¯ã€tuq376sã§ã™ã€‚
今回ã¯Gitã§ç®¡ç†ã—ã¦ã„るディレクトリã§ã®ä½œæ¥ã‚’ã¡ã‚‡ã“ã£ã¨ä¸æ–ã—ãŸã„å ´åˆã«ä¾¿åˆ©ãªgit stash
コマンドã«ã¤ã„ã¦ã€
基本ã¨ä¾¿åˆ©ãªã‚ªãƒ—ションã®ä½¿ã„方をä¸å¿ƒã«ç´¹ä»‹ã—ã¦ã„ããŸã„ã¨æ€ã„ã¾ã™ã€‚
Gitã®ä½¿ã„æ–¹ã€git commitã®å–り消ã—æ–¹ã€git cloneを知りãŸã„æ–¹ã¯ä»¥ä¸‹ãƒ–ãƒã‚°ã‚‚ã”一èªãã ã•ã„
・ 【超入門】初心者のためのGitとGitHubの使い方 - RAKUS Developers Blog | ラクス エンジニアブログ
・ 【Git入門】git commitを取り消したい、元に戻す方法まとめ - RAKUS Developers Blog | ラクス エンジニアブログ
・ 【Git入門】git cloneで既存リポジトリをクローンしよう! - RAKUS Developers Blog | ラクス エンジニアブログ
目次
- ã¯ã˜ã‚ã«
- 目次
- git stashã®åŸºæœ¬çš„ãªä½¿ã„æ–¹
- git stashã®ã„ã‚ã„ã‚ãªé€€é¿ã®ä»•æ–¹
- 退é¿ã—ãŸä½œæ¥ã®ç¢ºèª
- 退é¿ã—ãŸä½œæ¥ã®å‰Šé™¤
- ãŠã‚ã‚Šã«
git stash
ã®åŸºæœ¬çš„ãªä½¿ã„æ–¹
ã¾ãšã¯ã€åŸºæœ¬çš„ãªæ“作ã‹ã‚‰ã€‚
作æ¥ã‚’退é¿ã™ã‚‹
ç¾åœ¨ã®å¤‰æ›´ä½œæ¥ã‚’退é¿ã™ã‚‹ã«ã¯ä»¥ä¸‹ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使ã„ã¾ã™ã€‚
git stash save
ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã‚Šã€ãƒ¯ãƒ¼ã‚ングã¨ã‚¹ãƒ†ãƒ¼ã‚¸ãƒ³ã‚°ã«ã‚る作æ¥ã‚’退é¿ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
save
部分ã¯çœç•¥ã—git stash
ã®ã¿ã§ã‚‚実行å¯èƒ½ã§ã™ã€‚
退é¿ã—ãŸä½œæ¥ä¸€è¦§ã‚’確èªã™ã‚‹
次ã«é€€é¿ã—ãŸä½œæ¥ã®ä¸€è¦§ã‚’確èªã—ã¾ã—ょã†ã€‚
git stash list
実行ã™ã‚‹ã¨ã€ã“ã‚Œã¾ã§é€€é¿ã—ãŸã‚‚ã®ã‚’一覧ã§è¦‹ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
並ã³é †ã¯git log
ã¨åŒã˜ã‚ˆã†ã«ä¸Šã«è¡¨ç¤ºã•ã‚Œã‚‹ã‚‚ã®ã»ã©æ–°ã—ã„ã‚‚ã®ã§ã™ã€‚
$ git stash list stash@{0}: WIP on master: 36af2d1 added index.txt # 一番最近退é¿ã•ã‚ŒãŸä½œæ¥å†…容 stash@{1}: WIP on master: f0d73fe added readme stash@{2}: WIP on master: 3faa214 feat readme
退é¿ã—ãŸä½œæ¥ã‚’戻ã™
ã§ã¯ã€é€€é¿ã—ãŸä½œæ¥ã‚’戻ã—ã¦ã„ãã¾ã—ょã†ã€‚
作æ¥ã‚’戻ã™ã‚³ãƒžãƒ³ãƒ‰ã¯ä»¥ä¸‹ã®2ã¤ãŒã‚ã‚Šã¾ã™ã€‚
git stash apply git stash pop
ã©ã¡ã‚‰ã‚‚実行ã™ã‚‹ã“ã¨ã§é€€é¿ã—ãŸä½œæ¥ä¸€è¦§ã®ä¸€ç•ªæ–°ã—ã„ã‚‚ã®ã‚’戻ã™ã“ã¨ãŒã§ãã¾ã™ã€‚
apply
ã§ã‚ã‚Œã°é€€é¿ä¸€è¦§ã‹ã‚‰è©²å½“ã®ä½œæ¥ã‚’削除ã—ã¾ã›ã‚“ãŒã€pop
ã§ã‚ã‚Œã°æˆ»ã—ãŸä½œæ¥ãŒé€€é¿ä¸€è¦§ã‹ã‚‰å‰Šé™¤ã•ã‚Œã‚‹ã¨ã„ã†é•ã„ãŒã‚ã‚Šã¾ã™ã€‚
ã¾ãŸã€apply
ã¨pop
ã©ã¡ã‚‰ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã‚‚以下ã®ã‚ˆã†ã«æŒ‡å®šã™ã‚‹ã“ã¨ã§git stash list
ã§ç¢ºèªã§ãã‚‹ä»»æ„ã®é€€é¿ä½œæ¥ã‚’戻ã™ã“ã¨ãŒã§ãã¾ã™ã€‚
$ git stash list stash@{0}: WIP on master: 36af2d1 added index.txt stash@{1}: WIP on master: f0d73fe added readme $ git stash pop stash@{1} # 戻ã—ãŸã„作æ¥ã‚’指定 On branch master (ä¸ç•¥ï¼‰ Dropped stash@{1} (aa9b3a02231103600f1e622beb30118b28b202d3) $ git stash list stash@{0}: WIP on master: 36af2d1 added index.txt
以上を覚ãˆã¦ãŠã‘ã°ã€git stash
コマンドã¯å•é¡Œãªã使ã†ã“ã¨ã¯ã§ãã‚‹ã‹ã¨æ€ã„ã¾ã™ã€‚
ã‘ã‚Œã©ã‚‚ã£ã¨ä¾¿åˆ©ãªä½¿ã„方もã‚ã‚Šã¾ã™ã®ã§ã€æ¬¡ã¯ãã¡ã‚‰ã‚’紹介ã—ã¦ã„ãã¾ã™ã€‚
git stash
ã®ã„ã‚ã„ã‚ãªé€€é¿ã®ä»•æ–¹
åå‰ã‚’付ã‘ã¦é€€é¿ã™ã‚‹
git stash list
ã§ç¢ºèªã§ãる一覧ã¯ã€ã±ã£ã¨è¦‹ã§ã©ã®ä½œæ¥å†…容をä¿å˜ã—ãŸã‚‚ã®ã‹ãŒã‚ã‹ã‚Šã¥ã‚‰ã„ã§ã™ã€‚
ãã“ã§ã€é€€é¿æ™‚ã«åå‰ã‚’付ã‘ã¦ä¸€è¦§ã‚’ã‚ã‹ã‚Šã‚„ã™ãã—ã¦ã¿ãŸã„ã¨æ€ã„ã¾ã™ã€‚
$ git stash save "test_stash" # åå‰ã‚’付ã‘ã¦ä½œæ¥ã‚’ä¿å˜ Saved working directory and index state On master: test_stash $ git stash list stash@{0}: On master: test_stash # åå‰ã‚’付ã‘ã¦ä¿å˜ã—ãŸä½œæ¥ stash@{1}: WIP on master: f0d73fe added readme # åå‰ã‚’付ã‘ãšä¿å˜ã—ãŸä½œæ¥
上記ã®ã‚ˆã†ã«git stash save
ã®å¾Œã‚ã«åå‰ã‚’指定ã™ã‚‹ã“ã¨ã§ã€ä¸€è¦§ã‹ã‚‰å‚ç…§ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
ãŸã ã—ã€åå‰ã‚’指定ã™ã‚‹å ´åˆã¯save
ã‚’çœç•¥ã§ããªã„ã“ã¨ã«æ³¨æ„ã§ã™ã€‚
ステージングをç¶æŒã—ãŸã¾ã¾é€€é¿ã™ã‚‹
git stash
を実行ã™ã‚‹ã¨ãƒ¯ãƒ¼ã‚ングã¨ã‚¹ãƒ†ãƒ¼ã‚¸ãƒ³ã‚°ã«ã‚る作æ¥ã‚’退é¿ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€
ãã®ã¾ã¾ä½œæ¥ã‚’戻ã™ã¨ã€ã‚¹ãƒ†ãƒ¼ã‚¸ãƒ³ã‚°ã«ã‚ã£ãŸå¤‰æ›´ã‚‚ワーã‚ングã«æˆ»ã£ã¦ã—ã¾ã„ã¾ã™ã€‚
ステージング状態をç¶æŒã—ãŸã¾ã¾ã«ã™ã‚‹ãŸã‚ã«ã¯ã€æˆ»ã™éš›ã«ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚
git stash pop --index
ã‚‚ã¡ã‚ã‚“apply
ã§ã‚‚åŒã˜ã‚ˆã†ã«ã‚¹ãƒ†ãƒ¼ã‚¸ãƒ³ã‚°ã®çŠ¶æ…‹ã‚’ç¶æŒã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
$ git status On branch master Changes to be committed: (use "git restore --staged <file>..." to unstage) modified: readme.md Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: index.txt $ git stash $ git stash apply --index # ステージングをç¶æŒã—ãŸã¾ã¾ä½œæ¥ã‚’戻㙠On branch master Changes to be committed: (use "git restore --staged <file>..." to unstage) modified: readme.md Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: index.txt
追跡ã•ã‚Œã¦ã„ãªã„ファイルã®é€€é¿ã™ã‚‹
追跡ã•ã‚Œã¦ã„ãªã„状態ã®ã‚‚ã®ã«ã¤ã„ã¦ã¯git stash
ã®å®Ÿè¡Œã§ã¯é€€é¿ã•ã‚Œã¾ã›ã‚“。
æ–°è¦ä½œæˆã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ç‰ã®è¿½è·¡ã•ã‚Œã¦ã„ãªã„ã‚‚ã®ã‚‚å«ã‚ã¦é€€é¿ã™ã‚‹ã«ã¯ã€ä»¥ä¸‹ã®ã‚ˆã†ã«ã‚ªãƒ—ションを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
git stash -u
退é¿ã—ãŸè¿½è·¡ã•ã‚Œã¦ã„ãªã„ファイルã¯ã€æˆ»ã™ã¨å†ã³è¿½è·¡ã•ã‚Œã¦ã„ãªã„ファイルã¨ãªã‚Šã¾ã™ã€‚
$ git status On branch master Your branch is up to date with 'origin/master'. Untracked files: (use "git add <file>..." to include in what will be committed) test.txt nothing added to commit but untracked files present (use "git add" to track) $ git stash -u # 追跡ã•ã‚Œã¦ã„ãªã„ファイルをå«ã‚ã¦é€€é¿ Saved working directory and index state WIP on master: f0d73fe added readme $ git status # 追跡ã•ã‚Œã¦ã„ãªã„ファイルも退é¿ã•ã‚Œã¦ã„ã‚‹ On branch public_batch_data_acquisition nothing to commit, working tree clean $ git stash pop (ä¸ç•¥ï¼‰ Untracked files: (use "git add <file>..." to include in what will be committed) test.txt nothing added to commit but untracked files present (use "git add" to track)
退é¿ã—ãŸä½œæ¥ã®ç¢ºèª
退é¿ã—ãŸä½œæ¥ã®ä¸€è¦§ã¯git stash list
ã§ç¢ºèªã™ã‚‹ã“ã¨ã¯ã§ãã¾ã™ãŒã€å„作æ¥ã®è©³ç´°ã‚’確èªã™ã‚‹ã«ã¯ä»¥ä¸‹ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’用ã„ã¾ã™ã€‚
git stash show [確èªã—ãŸã„作æ¥]
明示的ã«æŒ‡å®šãŒãªã‘ã‚Œã°æœ€æ–°ã®ã‚‚ã®ã«ã¤ã„ã¦ã€æŒ‡å®šãŒã‚ã‚Œã°ãã®ä½œæ¥ã®è©³ç´°ã‚’確èªã§ãã¾ã™ã€‚
$ git stash list stash@{0}: WIP on master: 36af2d1 added index.txt stash@{1}: WIP on master: f0d73fe added readme $ git stash show # stash@{0}ã®è©³ç´°ã‚’表示 index.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) $ git stash show stash@{1} # stash@{1}ã®è©³ç´°ã‚’表示 readme.md | 6 +++--- 1 file changed, 3 insertion(+), 3 deletion(-)
ã¾ãŸã€diff
コマンドã®ã‚ˆã†ã«ç¢ºèªã—ãŸã„å ´åˆã¯ä»¥ä¸‹ã®ã‚ªãƒ—ションを付与ã—ã¾ã™ã€‚
git stash show -p [確èªã—ãŸã„作æ¥]
退é¿ã—ãŸä½œæ¥ã®å‰Šé™¤
一時的ãªä½œæ¥é€€é¿ã¨è¨€ã£ã¦ã‚‚ã€é€€é¿ã—ãŸä½œæ¥ãŒæœ€çµ‚çš„ã«ä¸è¦ã«ãªã£ãŸã‚Šã™ã‚‹ã“ã¨ã‚‚ã‚ã‚‹ã‹ã¨æ€ã„ã¾ã™ã€‚
ãã®ã‚ˆã†ãªå ´åˆã‚‚コマンドã§é€€é¿ã—ãŸä½œæ¥ã®å‰Šé™¤ãŒå¯èƒ½ã§ã™ã€‚
ã¾ãšã€ä¸€è¦§ã«ã‚ã‚‹ã‚‚ã®ã™ã¹ã¦ã‚’削除ã—ãŸã„å ´åˆã¯ä»¥ä¸‹ã‚’指定ã—ã¾ã™ã€‚
git stash clear
ãã—ã¦ã€ä¸€è¦§ã‹ã‚‰1件ãšã¤å‰Šé™¤ã—ãŸã„å ´åˆã¯ã€ä»¥ä¸‹ã®ã‚³ãƒžãƒ³ãƒ‰ã‹ã‚‰è¡Œãˆã¾ã™ã€‚
git stash drop [削除ã—ãŸã„作æ¥]
削除ã—ãŸã„作æ¥ã‚’指定ã—ãªã„å ´åˆã¯ä¸€ç•ªæ–°ã—ã„ã‚‚ã®ãŒå‰Šé™¤ã•ã‚Œã¾ã™ã€‚
$ git stash list stash@{0}: WIP on master: 36af2d1 added index.txt stash@{1}: WIP on master: f0d73fe added readme stash@{2}: WIP on master: 3faa214 feat readme $ git stash drop stash@{2} # 作æ¥ã‚’指定ã—ã¦å‰Šé™¤ Dropped stash@{2} (af801de83b4f3f5ad60b11faa8a77021d962f18d) $ git stash list stash@{0}: WIP on master: 36af2d1 added index.txt stash@{1}: WIP on master: f0d73fe added readme $ git stash drop # 作æ¥ã‚’指定ã›ãšå‰Šé™¤ Dropped refs/stash@{0} (4ce005a5c0489fc31008e28b6f64ebcd3d008f52) $ git stash list stash@{0}: WIP on master: f0d73fe added readme
ãŠã‚ã‚Šã«
Gitã®æ“作ã¯æ—¥å¸¸çš„ã«è¡Œã†ã‚‚ã®ã®ã€ãªã‚“ã ã‹ã‚“ã ã¨è‡ªåˆ†ã¯åŸºæœ¬çš„ãªä½¿ã„æ–¹ã—ã‹ã—ã¦ã„ãªã„ã®ã§ã€
今回ã¯ã‚‚ã†å°‘ã—便利ãªä½¿ã„方を覚ãˆã‚ˆã†ã¨ã€git stash
ã«ç„¦ç‚¹ã‚’当ã¦ã¦ã¿ã¾ã—ãŸã€‚
èªã‚“ã§ã„ãŸã ã„ãŸæ–¹ã«1ã¤ã§ã‚‚ã€ã¸ã‡ã¨æ€ã£ã¦ã„ãŸã ã‘ã‚‹ã‚‚ã®ãŒã‚ã‚Œã°å¹¸ã„ã§ã™ã€‚
エンジニアä¸é€”採用サイト
ラクスã§ã¯ã€ã‚¨ãƒ³ã‚¸ãƒ‹ã‚¢ãƒ»ãƒ‡ã‚¶ã‚¤ãƒŠãƒ¼ã®ä¸é€”採用をç©æ¥µçš„ã«è¡Œã£ã¦ãŠã‚Šã¾ã™ï¼
ã”興味ã‚ã‚Šã¾ã—ãŸã‚‰æ˜¯éžã”確èªã‚’ãŠé¡˜ã„ã—ã¾ã™ã€‚
https://career-recruit.rakus.co.jp/career_engineer/カジュアルé¢è«‡ãŠç”³è¾¼ã¿ãƒ•ã‚©ãƒ¼ãƒ
ã©ã®è·ç¨®ã«å¿œå‹Ÿã™ã‚Œã°è‰¯ã„ã‹ã‚ã‹ã‚‰ãªã„ã¨ã„ã†æ–¹ã¯ã€ã‚«ã‚¸ãƒ¥ã‚¢ãƒ«é¢è«‡ã‚‚éšæ™‚è¡Œã£ã¦ãŠã‚Šã¾ã™ã€‚
以下フォームよりãŠç”³è¾¼ã¿ãã ã•ã„。
rakus.hubspotpagebuilder.comラクスDevelopers登録フォーãƒ
https://career-recruit.rakus.co.jp/career_engineer/form_rakusdev/ã‚¤ãƒ™ãƒ³ãƒˆæƒ…å ±
会社ã®é›°å›²æ°—を知りãŸã„æ–¹ã¯ã€æ¯Žé€±é–‹å‚¬ã—ã¦ã„るイベントã«ã”å‚åŠ ãã ã•ã„ï¼
â—†TECH PLAY
techplay.jp
â—†connpass
rakus.connpass.com