[請益] 請問流行的 Git、CLI 環境和文字編輯器

看板 Soft_Job
作者 changyuheng (Yohan)
時間 2024-08-06 13:43:00
留言 142 ( 60推 1噓 81→ )
回文 3則
好奇大家都怎麼用 Git,以及主力使用什麼 IDE 開發。 雖然 IDE 會內建,也有第三方的 Git app 像是 GitKraken, 但我到現在還是在用 git 命令列的指令。 有時候會覺得有點冰冷,要記的命令很多,少用的功能還是要去查, 但是用習慣了,沒什麼問題就一直用。 門檻比較高不容易教別人我覺得是最大的缺點。 我看 Lazygit 非常紅,不過我是沒用過。 請問大家有沒有推薦其他的 Git app? 平常上班 VS Code、JetBrains、Neovim 都有在用。 早期推 CLI based 編輯器是因為 SSH 到 remote 機器後只有 CLI 能用, 但其實大不了就 mount 到 local 就好了, 而且現在 VS Code、JetBrains 等等也支援 remote 使用, 遠端桌面也更加成熟,所以這個賣點應該不存在了。 本來普遍嫌棄 Vim 是因為他預設功能簡陋,套件裝多了又慢, 而且少了正統 IDE 的語義解析,定位永遠是純文字編輯器。 但隨著 Vim 8.0 的背景執行和 Neovim 又追加了 lua 的支援, 以及對 LSP 的支援,這個界限也被打破了。 以前 VS Code 不能當主力,因為有些功能還是要 Vim, 例如 Git 的 3-way merge,但是後來 VS Code 也出了這個功能。 https://stackoverflow.com/a/72874300/1592410 Fleet 剛出時有試了一下,不過太陽春了。 而且不知道為什麼他一定要常駐 =.= 我主觀上還是覺得 Neovim 最順手最 solid, 遇過 VS Code 開大檔時 Vim 套件當掉, 不過 IDE 什麼都設好好也是滿方便的,就變成是要寫什麼就用什麼環境。 但調 Neovim 滿花時間的,要學 lua,時不時還要維護,也是很累。 最近看到一個滿喜歡的 freelancer 的 dotfiles 用 LazyVim, https://www.craftz.dog/ 就想說也來試試 lazy.nvim 作者大神做的包,結果是滿炫砲的但好像太肥了。 變成還要花時間調,那還不如自己來。 大家有沒有推薦什麼炫砲的 Neovim 設定,或是有什麼酷炫的編輯器可以分享? 最後想問一下大家用什麼 CLI shell。 我看 Nushell 評價不錯, 跟 PowerShell 一樣都是 stream 物件化的概念, 但是似乎很少人在討論,不知道用的人多不多? Fish 本來就很好用了,最近還全部用 Rust 重寫,感覺開發團隊真的很有心。 Fish 套件的生態也比較單純,從頭到尾一套 fisher 就屹立不搖, 不像 Zsh 琳瑯滿目,但沒有人能一統江湖。 但是有些環境例如 Yocto 沒有直接支援,所以也沒辦法換過去。 還有就是主流還是 Bash / Zsh,自己用 Fish 的話, 在文件上寫 Fish 的語法別人用不了等於沒寫, 寫 Bash 語法自己不能用,最後變成要寫二種, 所以我用了一段時間 Fish 後又忍痛換回 Zsh。 不知道現在有沒有什麼好解法? 有人推 replay.fish (Fish-bax), 不過這種重新寫語義解析的方式感覺不是很可靠。 https://stackoverflow.com/a/63163817/1592410 Zsh 的套件管理器以前 zplug 剛出的時候,可以多緒並行安裝套件很潮, 結果後來發現他安裝很快是沒錯,但是套件載入很慢…… zinit 主打 performance,但我印象他設定小複雜, 所以後來索性用快速小巧簡單的 zi,雖然小眾但是至今沒遇過問題, 搭配 Powerlevel10k 速度飛快。 也因為 Powerlevel10k 設定簡單、功能齊全、效能好, 所以一直沒有去嘗試 Starship。 目前覺得 Powerlevel10k 唯一的缺點是在 MSYS2 的環境啟動很慢。 最後最後想再問一下,既 Go 之後, 這幾年流行用 rust 把一些常見的 GNU utility、package 重寫, 在設計階段融入多執行緒的情況下,效能真的都比較好。 不過不知道有沒有整理好的清單? 目前只有在這邊有看到: https://github.com/qarmin/Rusty-Linux/blob/main/RustyLinux.sh 也有看到 https://uutils.github.io/ 不過他比較小眾, 而且 issue 一堆,不知道有沒有人真的拿他當主力? -- 可以頂天立地,也可以狡詐陰險, 可以當個誠實小郎君,也可以嘴裡沒有半句實話; 但是一定不能飄,飄起來的人就是自己騙自己。        柳岸花又明《我真沒想重生啊》 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.242.7.90 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1722922992.A.E2E.html

留言

moom50302 sourcetree, eclipse, intellij, notepad++ 08/06 14:00 1F
NDark git command無敵可以應付80% 08/06 14:19 2F
請問為什麼不是應付 100%?可以舉一些例子嗎?
gmoz source tree好用 08/06 14:23 3F
gmoz 文字檔編輯我用sublime 08/06 14:23 4F
qwer338859 sourcetree+cmd 08/06 14:31 5F
neo5277 海怪,vscode,bash,小烏龜都有用過 常用還是小烏龜跟bash 08/06 14:31 6F
stepnight git指令大家都一樣 08/06 14:33 7F
stepnight 為了教別人而使用GUI,反而落了下乘吧? 08/06 14:33 8F
stepnight 一套指令走天下Vs不同介面不同使用方式 08/06 14:33 9F
stepnight 不如叫人好好去把指令學好實在點? 08/06 14:33 10F
我覺得門檻愈來愈低是趨勢,能夠簡化的盡量簡化, 我們才能有更多空間處理更旁大、複雜的事情。
wanhuaJin Delphi表示 08/06 14:59 11F
labbat 我寫入git command到程式碼中,然後做成batch script 08/06 15:22 12F
labbat 在檔案總管下執行跟gui有八成像 08/06 15:23 13F
請問可以分享嗎?
Bencrie git 直接用命令。編輯器 vscode + clangd。shell 就 bash 08/06 15:24 14F
Bencrie 寫 shell script 的話就照 POSIX 標準走的 ash 系列 08/06 15:27 15F
sssyoyo sourcetree就很好用了阿 08/06 16:24 16F
tommyptt 小烏龜 08/06 16:25 17F
minipopy0314 sourcetree專案大會很卡 現在都改用fork超順 08/06 16:26 18F
ma721 sourcetree 08/06 16:30 19F
will6w Zed 08/06 16:39 20F
c800910 git gui我用fork,好用,清除簡單。缺點是我都忘記怎麼 08/06 17:09 21F
c800910 下commant了。 08/06 17:09 22F
c800910 清楚* 08/06 17:10 23F
第一次看到,感謝推薦!請問跟 Sourcetree、TortoiseGit 比較起來如何?
ozaki621205 IDE最近用cursor,還行,跟vs code有八成像 08/06 17:44 24F
這個滿酷的! Cursor 之於文字編輯器就像 Warp 之於 terminal emulator。
sniper2824 小烏龜 08/06 18:01 25F
ck237 小烏龜 08/06 18:03 26F
NDark 小烏龜 windows 08/06 18:16 27F
dmaox3 小烏龜 08/06 18:28 28F
nayeonmywife git cmd 不會用你敢放心讓他處理repo嗎 08/06 18:57 29F
sating00 gitextension 08/06 19:06 30F
godddddd Idea 用過回不去啦 08/06 19:10 31F
EPGo IDE 最近也改成 Cursor 08/06 19:13 32F
LiebeLion fork屌打全部 08/06 19:13 33F
ruthertw 自從用過sourcetree就回不去了 08/06 19:14 34F
WaterLengend JB全家桶,沒煩惱 08/06 19:55 35F
JetBrains 真的強
fallen01 gitextension 08/06 20:09 36F
ManGo1012 小烏龜 08/06 20:52 37F
luweber88 linux沒sourcetree改用vscode擴充沒大問題 08/06 21:07 38F
請問是用什麼,GitLens 嗎?
ga009900 小烏龜 08/06 21:51 39F
SKNNN7 sourcetree 有時候很卡 08/06 21:51 40F
andyPKPK fork 08/06 21:55 41F
gn60311 Fork +1 08/06 22:01 42F
netburst 小烏龜forever 08/06 23:40 43F
netburst 有在用AS的就知道內建的GIT UI也是屌打SORUCETREE 08/06 23:41 44F
netburst 更不用說小烏龜輾壓 08/06 23:41 45F
kurtsgm sourcetree + vscode 08/07 00:09 46F
kurtsgm sourcetree UI好用 但之前一直有燒cpu的bug 08/07 00:10 47F
t36085520 tig + neovim + bash 08/07 00:13 48F
請問有比較過 Lazygit、GitUI、Neogit、fugitive.vim 嗎?
neo5277 小烏龜有圖,每一動還會秀指令給你,又不耗資源覺得不錯 08/07 01:28 49F
neo5277 08/07 01:28 50F
Sourcetree 和小烏龜居然這麼多人用,原來這麼多人用 Windows!
superpandal 你這個使用經歷就是什麼流行接觸什麼 大家吹捧什麼用 08/07 02:33 51F
superpandal 什麼 在所有使用者一把抓出來一票跟你一模一樣的 08/07 02:34 52F
superpandal 當然不沉澱深入使用都可以 都是業界常態 08/07 02:36 53F
閣下眼光竟如此毒辣,恐怖如斯!
applehpsh git cmd就門檻最低了吧 08/07 02:40 54F
依我的經驗,光 CLI 就是一道很高的檻捏
superpandal 阿 還好還好 08/07 03:22 55F
knives cli門檻很高?那種人水準也就那樣了,跟他們沒啥好討論的 08/07 05:52 56F
knives 價值 08/07 05:52 57F
superpandal cli使用門檻不高 真正了解類unix下cli機制和湊出複雜 08/07 08:20 58F
superpandal 功能的門檻非常高 不了解只能說只懂皮毛了 08/07 08:22 59F
jobintan VSCode從數年前剛開始學程式就用到現在… 08/07 08:37 60F
jobintan 一套VSCode雖然算不上IDE,不過該有的東西像是Git、CLI 08/07 08:39 61F
jobintan 、文字編輯,應有盡有。 08/07 08:39 62F
henrylin8086 git我是本格派,下git的command。IDE大型VS CODE, 08/07 09:04 63F
henrylin8086 小型VIM。 08/07 09:04 64F
MOONY135 VS在linux上不支援 不然我也不想make build 08/07 09:04 65F
APTON Fork 08/07 10:23 66F
REDX 有人用 neovim 寫 code 嗎? 08/07 10:43 67F
Neovim 很讚,他也支援 Copilot。 而且他不會有 tab 被 Copilot 吃掉的問題, 可以獨立自訂 AI 和語義補完的熱鍵。
wulouise 我都用vscode寫c++大型專案啊,只缺class hierarchy tre 08/07 12:36 68F
wulouise e 08/07 12:36 69F
f26724309 Fork + cli, 有些IDE的內建git會莫名的雷(如Xcode 08/07 13:05 70F
guanting886 cli 操作門檻應該沒有你想像的高..現在ai時代都可以 08/07 14:55 71F
guanting886 產生出來告訴你怎麼做了 08/07 14:55 72F
guanting886 warp terminal 也有將自家的ai模型整在裡面 08/07 14:57 73F
guanting886 要打很深的指令 我覺得跟cli無關 那個跟系統的熟悉 08/07 14:58 74F
guanting886 度比較有關係 且真的要處理很複雜的 應該寫script去 08/07 14:58 75F
guanting886 解決了 08/07 14:58 76F
guanting886 不過雖然在cli指令很方便 但為了整體的效率有gui當 08/07 15:00 77F
guanting886 然用好用滿,再搭araxis merge更好用 08/07 15:00 78F
謝謝!第一次聽到這套,請問跟 BeyondCompare 比較起來如何?
Lordaeron windows 用winmerger 不好用? 08/07 17:09 79F
我對 WinMerge 的經驗是他不支援 4-window 3-way merge, 常需要解 conflict 的話很不方便。 https://stackoverflow.com/q/572237/1592410
superpandal 怎麼會沒關... 熟悉系統能增加運作的了解 但該指令的 08/07 20:11 80F
superpandal feature就是功能 例如bash本身功能就蠻多 但不去了解 08/07 20:13 81F
superpandal 等同沒用 而不是該套件本來的用處僅限於此 08/07 20:14 82F
superpandal 尤其再搭配其它工具會有不同的火花 08/07 20:18 83F
lantw44 git 主要用指令,看圖主要用 tig,也會用 gitg 和 gitk。 08/07 22:14 84F
lantw44 git add 用 gitg,git diff 用 git-split-diffs 或 meld 08/07 22:16 85F
lantw44 shell 用 bash,指令記錄開到無限大,方便找就指令回來用 08/07 22:18 86F
lantw44 我沒有用真正的 IDE,平時開發環境就是在 screen 開 bash 08/07 22:19 87F
lantw44 和 vim,搭配 vim-lsp、asyncomplete.vim、vim-gitgutter 08/07 22:22 88F
lantw44 vim-airline、vim-fugitive 等外掛。 08/07 22:23 89F
經典組合喲!
pig0038 sourcetree+cmd 08/07 22:33 90F
wrn14897 neovim + fugitive 08/08 05:09 91F
j1988922 git 只要會看圖,知道reflog,基本用什麼都不太會有問 08/08 06:11 92F
j1988922 題,指令派最常遇到是rebase -i不會用,gui 可能10年前 08/08 06:11 93F
j1988922 就有three way, 不少資深指令派最近才知道,浪費時間 08/08 06:11 94F
其實上面那個 15 年前貼的問題裡, 就列了不少支援 3-way 4-window merge 的 GUI based 的工具。 我覺得會用一些 TUI、CLI 的工具並不代表偏愛 terminal-like based, 真正的指標應該是有沒有用 tiling window manager。
j1988922 wrap好處是一長串有打錯字照打完,最後用滑鼠點錯字改 08/08 06:29 95F
Lordaeron 人就是這樣2009年沒的,2019也沒,現在都2024了 08/08 06:33 96F
Lordaeron winmerge都不知過了幾版了,有人還停在沒folder comp 08/08 06:34 97F
WinMerge 應該現在也還不支援 4-window 3-way merge, 最新版的 Git launch 他的參數裡還是只帶三個視窗: https://github.com/git/git/blob/master/mergetools/winmerge
Lordaeron 有人還停在只有2way. 而3 way 為何要4 window 我不解 08/08 06:35 98F
local、base、remote、merged,好像缺一不可?
labbat base 很好用,有的程式碼兩邊同時patch過不曉得 08/08 12:09 99F
logichom fork比sourcetree順,不過授權關係乖乖用後者 08/08 12:43 100F
Lordaeron 哦,原來是一份程式三套copy完全不同寫法?不然 08/08 13:34 101F
Lordaeron 不是三個就夠了?merge 到你選定的哪個。 08/08 13:35 102F
zeki621 vscode extension的 git graph 08/08 17:05 103F
ikachann SourceTree+1 不過有時候習慣直接用IDEA裡面的git功能 08/08 19:21 104F
superpandal 有用過平鋪視窗管理器就知道不是所有程式都適合平鋪 08/08 19:40 105F
superpandal 顯示 個人覺得最好是含有一點點平鋪功能的堆疊視窗管 08/08 19:42 106F
superpandal 理器 都是快捷鍵導向 平鋪視窗管理很久前就有人在吹 08/08 19:43 107F
superpandal 捧了 08/08 19:43 108F
superpandal 真正需要平鋪的狀況也不多 08/08 19:44 109F
superpandal 4 window個人是覺得太多 又不喜歡大螢幕 顯示很麻煩 08/08 19:45 110F
superpandal rebase還好吧 我都是工作才學用git 真的指令派學學沒 08/08 19:49 111F
superpandal 有難度 08/08 19:50 112F
VScode 用sourcetree看圖 跟基本操作 要複雜操作會用bash 08/09 00:00 113F
t36085520 我研究完lazygit 跟 gitui 覺得tig是最平衡的。 08/09 09:01 114F
t36085520 複雜的我還是打指令。 08/09 09:01 115F
感謝分享!
※ 編輯: changyuheng (210.242.7.90 臺灣), 08/09/2024 10:29:28
iamOsaka fork超頂 我現在都不會下指令了+1 08/09 11:29 116F
wulouise cli最麻煩的就是git add..我覺得任何ui讓你打勾就夠放便 08/09 12:44 117F
friends29 GUIsublime merge CLIgit bash/linux bash/zsh W 08/09 14:48 118F
friends29 indows唯一讓我覺得有進步的就是terminal有分頁且可以 08/09 14:48 119F
friends29 客製化啟動git bash 絕大多數都是用CLI 只有要撿hunk 08/09 14:48 120F
friends29 跟conflict會用GUI 08/09 14:48 121F
gungunham neovim 配置推 astronvim 可直接使用社群整理的插件 08/09 23:20 122F
papple23g vscode extension git graph 08/10 04:35 123F
chrisho sourcetree 跨平台 ,用ide的每套都要記很麻煩,統一用 08/10 09:17 124F
chrisho 一種就好 08/10 09:17 125F
Soros1989 推 fork 08/10 09:37 126F
sarsman fork讚讚,授權是買斷制的,而且能裝三台,值得支持 08/10 11:19 127F
sarsman 現在都只有做會比較花時間的指令時才會下指令 08/10 11:20 128F
wulouise win10就能裝windows terminal了 08/10 12:05 129F
superpandal cli要方便選取就是要寫腳本 首先git status -s可以讓 08/10 18:07 130F
superpandal 你取得檔案狀態 使用fzf -m --preview=diff預覽指令 08/10 18:09 131F
superpandal 可以讓你多選以及查看更改地方 把以上配合git add串 08/10 18:10 132F
superpandal 起來即可 替換git add可以很方便做這種事 這都是很基 08/10 18:11 133F
superpandal 本的操作 不懂如同門外漢 08/10 18:11 134F
linbanana 小烏龜 08/10 21:33 135F
Kimheeche 指令有那麼難記? 08/11 09:14 136F
goldie bash, git CLI, tmux + nvim (+一些常見 plugins) 08/11 10:08 137F
goldie 官方 Pro Git 前三章念一念,不懂的再查 man page, 08/11 10:10 138F
goldie 這樣 git CLI 夠用了 08/11 10:10 139F
wfgh 十年前用sourcetree 後來就轉用fork了 08/11 13:51 140F
wfgh 不過也只會用來看圖而已 也會用tig 操作都還是cmd 08/11 13:53 141F
googoo1102 neovim. 試過用vscode remote ssh搜索還是覺得慢 08/11 22:07 142F