小编Dav*_* J.的帖子

Git Commit Messages:50/72格式化

Tim Pope在他的博客文章中提出了一个特定的git commit消息风格:http: //www.tpope.net/node/106

以下是他推荐的内容的快速摘要:

  • 第一行是50个字符或更少
  • 然后一个空白行
  • 剩余文本应包含72个字符

他的博客文章给出了这些建议的基本原理(为简洁起见,我称之为"50/72格式化"):

  • 在实践中,一些工具将第一行视为主题行,将第二段视为主体(类似于电子邮件)
  • git log 不处理包装,因此如果行太长则很难读取.
  • git format-patch --stdout 将提交转换为电子邮件 - 所以如果您的提交已经很好地包装,那么它会很有用.
  • 我想补充一点,我认为蒂姆会同意:总结你的提交的行为在任何版本控制系统中都是一个很好的做法.它可以帮助其他人(或稍后的人)更快地找到相关提交.

所以,我的问题有两个部分:

  • git的"思想领袖"或"有经验的用户"有什么(大致)拥抱50/72的格式化风格?我问这个是因为有时新用户不知道或不关心社区实践.
  • 对于那些不使用此格式的人,是否有使用不同格式样式的原因?(请注意,我正在寻找关于优点的论据,而不是"我从未听说过"或"我不在乎.")
  • 从经验上讲,git存储库中有多少百分比采用这种风格?(如果有人想对GitHub存储库进行分析......提示,提示.)

我的观点是不推荐50/72款式或其他款式.(关于它,我更喜欢它,但我对其他想法持开放态度.)我只是想了解为什么人们喜欢或反对各种git提交消息样式的理由.(请随意提出尚未提及的要点.)

git

288
推荐指数
5
解决办法
9万
查看次数

使用Kafka进行数据建模?主题和分区

在使用新服务(例如非RDBMS数据存储或消息队列)时,我想到的第一件事是:"我应该如何构建数据?".

我已经阅读并观看了一些介绍性材料.特别是,例如,采用Kafka:一种用于日志处理的分布式消息系统,它写道:

  • "主题是与消息相关联的容器"
  • "最小的并行单元是主题的分区.这意味着......属于某个主题的特定分区的所有消息都将被消费者组中的消费者使用."

知道这一点,什么是一个很好的例子来说明如何使用主题和分区?应该什么时候成为主题?什么时候应该是分区?

举个例子,假设我的(Clojure)数据如下:

{:user-id 101 :viewed "/page1.html" :at #inst "2013-04-12T23:20:50.22Z"}
{:user-id 102 :viewed "/page2.html" :at #inst "2013-04-12T23:20:55.50Z"}
Run Code Online (Sandbox Code Playgroud)

主题应该基于user-idviewedat?分区怎么样?

我该如何决定?

apache-kafka

160
推荐指数
4
解决办法
5万
查看次数

使用<BR />有时不好吗?

使用<BR/>标签有时不好吗?

我问,因为我的开发团队给我的第一个建议是:不要使用<BR/>; 相反,使用样式.但为什么?使用<BR/>标签时会出现负面结果吗?

html tags styles

149
推荐指数
6
解决办法
7万
查看次数

如何在Clojure中将惰性序列转换为非惰性序列

我在Clojure中尝试了以下内容,期望返回一个非惰性序列的类:

(.getClass (doall (take 3 (repeatedly rand))))
Run Code Online (Sandbox Code Playgroud)

但是,这仍然会回归clojure.lang.LazySeq.我的猜测是doall评估整个序列,但返回原始序列,因为它仍然可用于记忆.

那么从懒惰中创建一个非懒惰序列的惯用手段是什么?

clojure lazy-evaluation

91
推荐指数
5
解决办法
4万
查看次数

在Mac OS X Lion上,"gem install therubyracer"失败

我很感激gem install therubyracer上班的帮助.这是错误:

$ gem install therubyracer
Building native extensions.  This could take a while...
ERROR:  Error installing therubyracer:
    ERROR: Failed to build gem native extension.

        /Users/david/.rvm/rubies/ruby-1.9.3-p194/bin/ruby extconf.rb
checking for main() in -lobjc... yes
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
    --with-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/Users/david/.rvm/rubies/ruby-1.9.3-p194/bin/ruby …
Run Code Online (Sandbox Code Playgroud)

ruby rubygems v8

70
推荐指数
7
解决办法
4万
查看次数

完美的100%宽度的父容器用于Bootstrap输入?

如何使Bootstrap输入字段与其父字段完全相同?

正如史蒂夫 - 奥布莱恩在Bootstrap问题#1058中写道:

直接应用于输入字段时,设置为100%不起作用,因为它不考虑填充.因此,您最终得到100%的容器加上输入框上的填充,因此输入框通常会在容器外部打破.

该票提供了各种解决方案,但我正在寻找最好的方法 - 最好是已经由Bootstrap提供的CSS类.

css twitter-bootstrap

63
推荐指数
5
解决办法
12万
查看次数

如何将byte []转换为Byte [],反之亦然?

在不使用任何第三方库的情况下,如何将byte []转换为Byte [],并将Byte []转换为byte []?有没有办法快速使用标准库?

java arrays byte boxing

63
推荐指数
6
解决办法
7万
查看次数

可以在Scala中匹配范围吗?

是否可以匹配Scala中的一系列值?

例如:

val t = 5
val m = t match {
    0 until 10 => true
    _ => false
}
Run Code Online (Sandbox Code Playgroud)

mtrue,如果t为0和10,但假另有.这一点当然不起作用,但有没有办法实现类似的东西?

scala range pattern-matching matching

49
推荐指数
2
解决办法
2万
查看次数

可选的换行符HTML实体,始终不可见

我想要一个可选的换行符,它总是不可见的,适用于word-wrap: break-word;CSS样式.

以下是一些细节.我的目标是在合理的地方拆分长链接.这些字符是一个良好的开端:-,.,_,/,\.这不是特定于Rails的问题,但我想分享一些我现在正在使用的代码:

module ApplicationHelper
  def with_optional_line_breaks(text)
    text.gsub(%r{([-._/\\])}, '\1&shy;')
  end
end
Run Code Online (Sandbox Code Playgroud)

这是上面代码的问题:当&shy;生效时(在带有:)的表中word-wrap: break-word;,&shy;显示为-.我不想看到-; 我想要一个没有显示任何角色的换行符.


html line-breaks html-entities

47
推荐指数
3
解决办法
3万
查看次数

设置BigDecimal的特定精度

我有一个XSD,要求我使用BigDecimal作为lat/lon.我目前将lat/lon作为双精度,并将它们转换为BigDecimal,但我只需要使用大约12个精度位置.我无法弄清楚如何设置它.谁能帮我这个?

java bigdecimal floating-point-precision

46
推荐指数
2
解决办法
9万
查看次数