What have you found for these years?

2009-07-21

Git User's Survey 2009

Git User's Survey 2009

個人覺得這份問卷可以看出對 Git 的用心,
或許可以一改 OSS 往往忽略使用者的印象吧?

我去年還前年應該也有填寫完,原因一方面是問卷很有誠意,
另一方面則是可以看到很多以前不知道的東西... XD

幾個覺得有誠意的點:

1. 任何欄位都可以不回答
2. 用 cookie 記錄你的所有回答結果,隨時可以關掉再接著填
3. 匿名,但是所有原始資料都是公開的,方便案例分析之類的
4. 問題往往有註解
5. radio button 的部份每題都有 reset XDDDD 方便你取消回答

來看看裡面列出的操作方式:

git add -i / -p
這可能是我最常用的,僅次於 diff

git add -u / -A
沒用過,查了一下感覺是容易造成粗心的指令

git am (-i)
哈?

git apply
由於不想 commit + push, 這個我也很常用
用 diff 輸出至 pbcopy (mac 的剪貼簿) 再 git apply 至 server

git apply --whitespace=fix
不知道是什麼,不過空白的問題我都自己解決

git archive
這要打包 snapshot 超方便

git bisect (run [cmd])
沒機會用到哩

git annotate
看起來只是 blame 的舊版

git gui blame
沒用過 @@

git blame (-L [start], [end] etc.)
一直覺得這個名字很.. XD
該說幽默嗎? XD

git bundle
不知道這是什麼... 看起來暫時用不上

git cherry
同上 @@

git cherry-pick (-n / --no-commit)
這很方便哩,只是不知道有沒有 merge history?

git citool
這跟 git gui 有何不同?

git clean
看起來是危險動作....

git add + git commit
在沒有 git add -p 之前我的標準動作

git commit -a
懶人專用,不建議

git commit (-i) [file]...
這啥?

git commit --amen
這是做事衝動或反悔如我人專用 XDXD
只是 push 上去之後就最好別用,
因此也算危險指令...

git daemon (pushing enabled)
只有測試過,可能要分享時比較有用?

git difftool
這跟 git diff 有啥差啊?沒看到 git diff...
我就當一樣囉?那這也是最常用的之一

git ... --dirstat
哈?目錄統計嗎?

git fetch [options]
不要 merge 時用,我還在想哪裡會需要...
可能在切斷網路之前? = =
merge 就離線處理...

git filter-branch
這超好用的,不過使用前請先備份...
可以刪掉一些不要的東西,例如誤放上去的 binary 檔
不過我不太清楚能不能 filter content,
例如程式碼裡的 password 之類的...
可以的話,很好很強大,雖然我不知道內容要怎麼過濾?
有可能做到嗎?

git format-patch
給人 patch 時很方便

git grep
沒用過,顧名思義就是跨 commit 的 grep 吧?

git imap-send
哈?

git instaweb
可以用 webrick, 滿方便的,立刻產生一個 git source browse

git log --grep/--author/...
我常常用 log 看我上次做到哪...

git log -S string (pickaxe search)
沒用過... pickaxe search 是啥?

git log --graph
我覺得還要搭配 --oneline 比較有用

git merge
應該不用解釋了吧?

git merge with strategy
例如章魚合體?沒用過...

git merge --squash
這我覺得很大的 OSS 才有機會用到...

git mergetool
這又啥... 怎麼一堆 tool @@

git pull [remote]
同 push/merge 應該都不用解釋?

git pull --rebase [options]
千萬別隨便 rebase, 危險動作

git pull [URL] [ref]
我好像都是先設 remote 耶
也是感覺在分享時比較有機會用,搭配 git daemon 之類的

git push
說過應該不用解釋 XDXD

git relink
hardlink 用的嗎? @@

git rebase (-i)
有加 i 應該比較安全吧?但基本上還是盡量避免...

git reflog or git log -g
這啥... 待我研究研究 @@

git remote update
原來還有這招... [筆記]

git request-pull
這啥... 各種工具一堆 XD

git revert
很方便的反悔工具... XD 不危險!

git send-email
我不太熟悉 email 用這種方式操作...

git show-branch
又一個不同的 log 輸出格式.......

git shortlog
該說啥呢,其實也就是 log 的一種 tool :s

git shortlog -s
這可以看 author 統計

git stash
這很方便,因為有些地方需要 clean working copy

git stash --keep-index
不明白... orz

git submodule
這很好用!聚合 project 很方便

git subtree
哈? git-core @1.6.3.3_0+doc+svn (active)
裡好像沒這東西

git svn
就跟 svn 整合時需要這個,但感覺應該可以做得更好...

git whatchanged
唔,這不錯,不過為什麼又是一種 log 格式輸出...

==
結論是比去年還前年多用了很多東西...
之前是說 1% ? 那現在大概有 3%...

2 retries:

大鳥 said...

> git clean
> 看起來是危險動作....
這我常用 尤其是需要build binary的專案
commit完後保持目錄乾淨

git clean -fdxn 確認一下
再git clean -fdx

godfat 真常 said...

是喔?通常我會用 make clean 或 rake clobber
因為我常常會把一些暫時要用到的東西丟在 working directory,
如果 git clean 下去那些就會不見了
make clean 之類的 custom script 則針對目標處理
例如 *.o 之類的

Post a Comment

All texts are licensed under CC Attribution 3.0