[問題] git追加同內容不同檔名到近期的commit

看板Programming作者 (路人_Lv菜逼八)時間6年前 (2018/02/24 18:34), 6年前編輯推噓8(8037)
留言45則, 10人參與, 6年前最新討論串1/1
最近在學git 練習教學網站的狀況題 狀況是「追加檔案到最近一次的commit」 最近一次的commit 是把hello.html更名成world.html (空檔案) 然而我又新增一個檔案叫做123.html 也是沒內容的空檔案 下了add 123.html並且commit --amend之後 跑出來的結果是: [master abc41d8] change name (hello.html -> world.html) Date: Sat Feb 24 17:48:29 2018 +0800 2 files changed, 0 insertions(+), 0 deletions(-) rename hello.html => 123.html (100%) create mode 100644 world.html 雖然都是空檔案覺得git這樣搞好像也沒差 不過看怎麼會是把先把hello.html重新命名成123.html 並且再創了一個world.html檔案啊...(汗 不該是 保留先前的操作(hello.html重新命名成world.html) 在這後面新增一個新增檔案的動作(create mode 123.html之類的) 這樣嗎? 還是其實這是一種隨機事件 也有機會跑成我上面所說的狀況...(咦? 雖然糾結這種狀況好像沒啥意義啦XD 不過還是很好奇到底為什麼是這樣跑 希望知道的大大可以替我解除疑惑 小弟感激不盡 m(_ _)m -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.235.6.15 ※ 文章網址: https://www.ptt.cc/bbs/Programming/M.1519468457.A.6CC.html

02/24 18:38, 6年前 , 1F
git 不會知道你實際上做了什麼動作
02/24 18:38, 1F

02/24 18:38, 6年前 , 2F
它只看到你 commit 時的結果
02/24 18:38, 2F

02/24 18:39, 6年前 , 3F
所以它會從那裡推測你到底做了什麼事情
02/24 18:39, 3F
原來如此...看來是git推測成這個樣子了orz 謝謝回復:D ※ 編輯: Arbin (36.235.6.15), 02/24/2018 18:46:26

02/24 22:48, 6年前 , 4F
你用什麼指令重新命名?
02/24 22:48, 4F
用git mv重新命名的

02/24 23:29, 6年前 , 5F
Good question 卡一個
02/24 23:29, 5F

02/25 03:14, 6年前 , 6F
我實驗之後結果是跟檔案的排序有關,排
02/25 03:14, 6F

02/25 03:14, 6年前 , 7F
在前面的檔案會先拿去填rename的空缺,
02/25 03:14, 7F

02/25 03:14, 6年前 , 8F
然後才是新增的空缺,當然只有空檔案會
02/25 03:14, 8F

02/25 03:14, 6年前 , 9F
這樣
02/25 03:14, 9F
所以只能說git在無法判斷實際上做什麼動作 且又是空檔案的情況下 做檔名排序->補空->再新增嗎@@?! 先感謝上面大大們的回答 ※ 編輯: Arbin (36.235.6.15), 02/25/2018 05:35:28

02/25 11:52, 6年前 , 10F
你不用猜git裡面怎麼幫你做的
02/25 11:52, 10F

02/25 11:53, 6年前 , 11F
反正都是沒內容檔案 他愛怎麼做都沒差
02/25 11:53, 11F
確實是怎麼做都沒差...XD ※ 編輯: Arbin (36.235.6.15), 02/25/2018 14:30:43

02/25 16:59, 6年前 , 12F
如果你附加檔案有內容就不會這樣。
02/25 16:59, 12F

02/25 17:01, 6年前 , 13F
就像SQL select你不聲明排序他不一定會
02/25 17:01, 13F

02/25 17:01, 6年前 , 14F
照你塞進去的順序給你 有也是恰好
02/25 17:01, 14F
有內容的話git會判斷這個我是知道的w 所以這樣講起來很像隨機事件一樣耶 反正最終結果都一樣我就...(ry ※ 編輯: Arbin (36.235.6.15), 02/25/2018 18:11:05

02/25 20:51, 6年前 , 15F
不如給 git 貢獻個 pull request?!
02/25 20:51, 15F
pull request是提交修正用的吧 我的C的能力只有兩光程度Orz 看有沒有其他大大要提 (?)

02/25 23:28, 6年前 , 16F
按照git的判定方式,它好像也沒辦法完
02/25 23:28, 16F

02/25 23:28, 6年前 , 17F
美解決這個問題吧,除非它去看系統操作
02/25 23:28, 17F

02/25 23:28, 6年前 , 18F
紀錄?(可以這樣嗎,我不確定)
02/25 23:28, 18F
看教學網站只有說他是判別內容 操作部分 照上面討論下來應該就不是判斷依據了@@ 系統操作我也不清楚可不可以看到更詳細的內容... ※ 編輯: Arbin (111.83.222.103), 02/26/2018 12:48:17

02/27 08:57, 6年前 , 19F
說沒差也不一定。要是你要把這branch
02/27 08:57, 19F

02/27 08:57, 6年前 , 20F
rebase ,而目的地有一已修改過的hel
02/27 08:57, 20F

02/27 08:57, 6年前 , 21F
lo.html , 不肯定git 會怎麼處理了
02/27 08:57, 21F
rebase目前還沒學到相關章節 所以還不清楚@@

02/27 11:29, 6年前 , 22F
git 新手問一個: 假如共寫一份檔案,是不
02/27 11:29, 22F

02/27 11:29, 6年前 , 23F
是每次傳新版的步驟: 本機檔 commit -> g
02/27 11:29, 23F

02/27 11:29, 6年前 , 24F
it rebase -> git push -> git pull
02/27 11:29, 24F
我卡一個(其實是還沒學到那裡xd ※ 編輯: Arbin (42.76.204.55), 02/27/2018 14:20:33

02/27 15:13, 6年前 , 25F
沒事rebase幹嘛 有commit潔癖嗎
02/27 15:13, 25F

02/27 15:14, 6年前 , 26F
過度的學習是有害身心的
02/27 15:14, 26F

02/27 20:09, 6年前 , 27F
commit, pull --rebase, push
02/27 20:09, 27F

02/27 20:10, 6年前 , 28F
共同開發還玩 rebase + push 是在害人吧
02/27 20:10, 28F

02/28 02:40, 6年前 , 29F
嗯...看來rebase不能亂用 那這塊我還是淺
02/28 02:40, 29F

02/28 02:40, 6年前 , 30F
學好惹
02/28 02:40, 30F

02/28 13:46, 6年前 , 31F
git的意義是在用 不是整套git學起來再
02/28 13:46, 31F

02/28 13:47, 6年前 , 32F
出去玩 那樣意義不大 學簡單夠用就好
02/28 13:47, 32F

02/28 13:49, 6年前 , 33F
沒有pull就push也會吃警告 叫你先pull
02/28 13:49, 33F

02/28 14:51, 6年前 , 34F
好的..明白了
02/28 14:51, 34F

02/28 17:08, 6年前 , 35F
有些公司會要求使用rebase或squash
02/28 17:08, 35F

02/28 17:08, 6年前 , 36F
整理近端過多的commit再一次push
02/28 17:08, 36F

02/28 17:09, 6年前 , 37F
但除非規定 一般開發流程根本不需要
02/28 17:09, 37F
原來如此 (筆記 ※ 編輯: Arbin (61.223.107.208), 02/28/2018 22:23:11

03/02 02:56, 6年前 , 38F
感覺如果在只有自己會動的 branch 還沒
03/02 02:56, 38F

03/02 02:56, 6年前 , 39F
merge 回 master 前也可以先 rebase
03/02 02:56, 39F

03/02 02:56, 6年前 , 40F
整理一下再併進去@@
03/02 02:56, 40F

03/02 02:57, 6年前 , 41F
或是 pr 別人的專案前會應要求 rebase
03/02 02:57, 41F

03/02 03:04, 6年前 , 42F
只有自己用的Git repo 不rebase 當然
03/02 03:04, 42F

03/02 03:04, 6年前 , 43F
也沒什麼差,當一team 十幾個人各自在
03/02 03:04, 43F

03/02 03:04, 6年前 , 44F
不同位置branch 出來又在不同時候merg
03/02 03:04, 44F

03/02 03:04, 6年前 , 45F
e,你要看history 就頭痛了。
03/02 03:04, 45F
文章代碼(AID): #1QaJ-fRC (Programming)