1
kaichen 2014-07-02 22:30:23 +08:00 14
如果熟悉在Command line使用Git,不要使用`-m`,而是在Commit的时候加上`-v`,这样在编辑Commit Message时先往下走,把代码再认真看一遍,看好了再写Commit Message。
这是我一直以来的习惯。 |
2
bitbegin 2014-07-02 22:36:52 +08:00
GitX是啥?
|
4
isy 2014-07-02 22:49:15 +08:00 1
用 Vim 的话配合 vim-fugitive 插件也挺好用的, :Gdiff 对比很方便。 另外 git commit -a 是个很坏的习惯
|
5
yangruixuan 2014-07-02 22:52:09 +08:00
我是处女座我骄傲
|
6
TankyWoo 2014-07-02 22:55:05 +08:00
@kaichen 赞成,`-m`最好不要加,除非是简短的说明;还有就是没有特殊理由,不要使用`git add *`,`git add .`,也不要直接用`git commit -a`等。
主要还是最好再次确认下,防止比如把一些不需要的如隐藏文件等也给add提交进去了。 |
7
yangg 2014-07-02 22:58:53 +08:00
@kaichen Tks, I used to use `git dc' which is aliased to `diff --cached'
|
8
ispinfx 2014-07-02 23:04:10 +08:00 via iPad
Magit帮到你
|
9
leofml 2014-07-02 23:04:36 +08:00
所以我一般用 SourceTree
|
10
h2ero 2014-07-02 23:07:24 +08:00 1
一般都是用的git diff --cached看下, 看来以后要养成git ci -v的习惯。
|
11
yangqi 2014-07-02 23:14:57 +08:00 1
这就是用GUI的好处,每次commit之前都可以很自然的review, 也便于更好的写comment
|
12
powerfj 2014-07-02 23:17:06 +08:00
提交之前检查代码是非常必要的,经常看别人一不小心带出去不该带出去的代码的..每次看别人烟都不眨一下全量提交我就在为他捏把汗..
|
13
Phariel 2014-07-02 23:19:38 +08:00 via iPad
sourcetree一样,神器。
|
14
ChiangDi 2014-07-02 23:30:24 +08:00
JB家 的 IDE 都是 commit 的时候可以看的,关键是看到不对还可以直接改,简直神奇
|
15
xujialiang 2014-07-02 23:37:47 +08:00
虽然公司还在用svn。。。。。。不过我commit之前还是都看一遍。。。。。。。。xcode逼着我看啊~~~~~~~~~~~~~~~不看不舒服。。。。
|
16
akfish 2014-07-02 23:39:20 +08:00
Commit前review是必须的,我个人经常用pre-commit hook执行build和test,测试不通过直接就不能commit。
|
17
passluo 2014-07-02 23:54:09 +08:00 via Android
所以 SourceTree 的交互蛮好的,鼓励大家 commit 前先浏览一下自己的更改。
|
18
yxjxx 2014-07-02 23:54:49 +08:00
我觉得sourcetree比gitx更好用些,也有stage lines功能,还可以查看uncommitted changes,功能更丰富些.
|
19
yangqi 2014-07-02 23:56:18 +08:00
sourcetree +1, 同时支持git和mercurial
|
20
lyragosa 2014-07-02 23:59:37 +08:00
看来v2ex只有我一个人直接在线上改服务器代码QAQ
|
21
jianzong 2014-07-03 00:04:42 +08:00
一般直接git diff确认一下,刚刚才发现-v 是个好东西
|
22
mcfog 2014-07-03 00:12:38 +08:00 1
|
23
hustlzp 2014-07-03 00:24:22 +08:00
在用sourcetree看。
|
24
gancl 2014-07-03 00:49:09 +08:00
sourcetree +1
|
25
SoloCompany 2014-07-03 00:55:43 +08:00
直接在 JetBrains 里面提交代码就不会忘记自己 Review 了
|
26
rainysia 2014-07-03 02:32:06 +08:00
发现没linux下用户吗? 给抛弃了.
目前review用的qgit, 有时也用gitg 和Giggle. |
27
AstroProfundis 2014-07-03 05:25:32 +08:00
|
28
jprovim 2014-07-03 05:46:32 +08:00
In zsh, use gca instead.
or type it yourself `git commit -v -a` |
29
amoblin 2014-07-03 06:30:15 +08:00 3
我是这样做的:
1. git stash 2. git pull 3. git stash pop(这里可能要处理冲突) 4. git status 5. git add -u 6. git diff --cached 7. git commit(这里我设置了2个git hooks:pre-commit和prepare-commit-msg。前者会做一些自动更新文件的工作,后者会自动添加一些信息到commit里去) 8. git log 确认一下 9. 没问题就 git push 附上2个git hooks的链接: https://github.com/amoblin/MyDotFiles/tree/master/git-hooks |
30
softempire 2014-07-03 07:43:34 +08:00
commit 之前自己review是我们强制要求的
|
31
niko 2014-07-03 07:45:08 +08:00
都会review,嗯~
|
32
fsw90628 2014-07-03 08:16:34 +08:00
看了 WWDC,苹果的团队会在 commit 之前运行一遍 performance 和 correctness 的测试。
|
33
railgun 2014-07-03 09:14:30 +08:00
不review就敢提交?哪来的勇气?
|
34
wy315700 2014-07-03 09:26:19 +08:00
git add 之前用 git diff查看
|
35
wecoders 2014-07-03 09:59:07 +08:00
SourceTree+1
好用,不贵 |
36
duzhe0 2014-07-03 10:56:15 +08:00
一直都是先svn diff 再svn ci 的
|
37
ijse 2014-07-03 11:00:41 +08:00
一般用git diff
windows下内置了一个小工具 gitk, 还可以看提交树, 很不错~~ 另外,可以通过配置git hook实现一些commit之前要做的事,比如跑单元测试,检查代码格式 什么的。。 |
38
bigporker 2014-07-03 11:02:24 +08:00
这个不是标配么
每次commit之前,自己review一遍代码,再让同事帮忙review一遍代码是个好习惯 |
40
ceyes 2014-07-03 11:10:06 +08:00
commit 只要没有push上去就可以随便修改, rebase, reset……
所以我更倾向于在push 之前review 这个commit, 或发patch 让大家review。 |
41
Bluecoda 2014-07-03 11:21:05 +08:00
这么多SourceTree,用tig的有点另类啊。有没有朋友介绍一下SourceTree比tig优势在哪里?
|
42
chshouyu 2014-07-03 11:27:18 +08:00 1
可以试试git add -p
可以精细的控制要提交的内容 y - stage this hunk n - do not stage this hunk q - quit; do not stage this hunk nor any of the remaining ones a - stage this hunk and all later hunks in the file d - do not stage this hunk nor any of the later hunks in the file g - select a hunk to go to / - search for a hunk matching the given regex j - leave this hunk undecided, see next undecided hunk J - leave this hunk undecided, see next hunk k - leave this hunk undecided, see previous undecided hunk K - leave this hunk undecided, see previous hunk s - split the current hunk into smaller hunks e - manually edit the current hunk ? - print help GUI程序当然更好用一点 |
43
lazyphp 2014-07-03 11:40:38 +08:00
git commit -m 之前必须确认好 没搞错。 在这过程之前的所有操作都可以快速还原的。。。
|
44
rannnn 2014-07-03 11:50:31 +08:00
公司里面的ci build一次要半个小时。。。每次commit都是胆颤心惊的看了一遍又一遍生怕搞挂了。
|
45
skywalker 2014-07-03 11:58:14 +08:00
magit +1
|
46
hutushen222 2014-07-03 12:22:00 +08:00
SourceTree +1
|
47
pepsin 2014-07-03 12:24:27 +08:00
都是用 Github 那个客户端,每次都是通读一遍变更才出去。这不是基本素养么。
|
48
suprod 2014-07-03 12:28:03 +08:00 via iPhone
Tigtigtigtigtigtigtigtig
|
49
est 2014-07-03 12:34:58 +08:00
commit错了revert 然后 reset呗。
|
50
reorx 2014-07-03 12:48:06 +08:00
没错,自从用了 GitX 之后,review 和 commit 都变得更清晰了,即便一次写很多代码,也可以非常方便地拆分成多个 commit 了。个人感觉比 SourceTree 好用,btw,我用的是这个 fork: http://rowanj.github.io/gitx/
|
51
qichunren 2014-07-03 13:00:37 +08:00
GitX可以选中文件中的行来提交,非常好用。
|
52
breeswish 2014-07-03 13:14:34 +08:00
自从有了 SourceTree, 其他方式再也不用了.. 而且还是免费的
|
54
finian 2014-07-03 13:15:41 +08:00
SourceTree +1
|
55
toctan 2014-07-03 13:26:01 +08:00 via iPhone
magit 秒了所有…
|
56
chemzqm 2014-07-03 13:38:16 +08:00
alias gca="git commit -a -v"
一般都是gca,gitx看各种分支线挺方便 |
57
taobeier 2014-07-03 14:02:38 +08:00
git commit -a 不是什么好习惯
|
58
66beta 2014-07-03 14:12:30 +08:00
Github客户端可以当第三方用
|
59
jianghu52 2014-07-03 15:48:49 +08:00
看了一圈,没一个人用TortoiseGit ,我是不是太low了?但是我确实觉得小乌龟很好用啊。尤其是还可以有中文版。
|
60
bigporker 2014-07-03 16:25:45 +08:00
|
61
fo2w 2014-07-03 20:57:52 +08:00
压根不是习惯问题, 基本素养
|
62
terrortang 2014-07-03 21:10:56 +08:00
@ispinfx 同magit
|
63
sd4399340 2014-07-03 22:06:20 +08:00
一般sourcetree里会看一下,现在也不用-m了,commit写的越详细越好
|
64
sd4399340 2014-07-03 22:08:41 +08:00
还有个好处就是,git commit打开vim以后,第一行写简短的,你长度太长了字体会变灰提示,中间空一行,后面写详细的,这样的话github上可以识别的,而且你发pull request的话如果只有一个commit,会自动把简短的当标题,详细的当内容,非常方便!
|
65
maga 2014-07-03 22:47:28 +08:00 via iPhone
一直用终端的git,原来还有gitx好东西
|
66
lijinma 2014-07-04 06:26:38 +08:00 via Android
没有人用 git gui& 吗?
|
67
myrual 2014-07-04 09:39:11 +08:00
用过tortisegit, 也用过xcode自带的git。
sourcetree在mac上用过,也在windows上用过。 只有sourcetree才能真正的让我觉得顺手。 任何时候都可以反悔,任何一块都可以反悔,任何一行都可以反悔。 唯一的问题就是windows上面的版本很卡,但是为了sourcetree,我也只能忍了。 @Bluecoda |
68
billlee 2014-07-04 20:42:16 +08:00
每次的提交流程是 add -i / diff --cached / commit
|
69
iugo 2014-07-06 14:05:01 +08:00
每次「说话」之前再自己「想一想」是个好习惯.
|
70
dcoder 2019-05-20 07:40:23 +08:00
都是在自己的 dev branch 上 commit 吧, 可以 commit 完了之后,
再 review 也行啊, 然后再 merge to stage/master branch. |