小编Ron*_*ity的帖子

如何git重置 - 除了4个文件以外的一切

假设什么都没有上演,除了文件之外,重置你所做的所有工作的推荐方法是什么:

app/models/a.rb
app/views/a/index.html.rb
config/foo.rb
config/bar.rb
Run Code Online (Sandbox Code Playgroud)

app/models /和app/views /中存在其他脏文件,我不想保留.

git

23
推荐指数
3
解决办法
9642
查看次数

我应该总是用哪个解析日期时间?DateTime,Time,Time.zone?

在Rails中,我看到我有几个选项来解析日期和日期时间.解析日期的最佳做法是什么,其唯一目的是通过ActiveRecord将它们保存到数据库中?为什么?

Time.zone.parse(...)
Time.parse(...)
DateTime.parse(...)
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails ruby-on-rails-3

12
推荐指数
1
解决办法
4775
查看次数

Git工作流程和发布分支:很多,一个或没有?

对于我们的Web开发,我们每天进行每周部署.有些情况下我们会将某些内容部署到QA,但是他们几天都没有对其进行测试,然后我们会有一个生产修复或需要更新的增强功能.两个问题:

(1)这对于什么是好的工作流程?

(2)有一个连续的,长寿命的分支称为生产或发布,与每个版本的新发布分支相反,或者只是做主要的所有内容并相应地标记它有什么优点和缺点?同样,这适用于具有可以备份的频繁发布的Web开发.

git workflow

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

Oracle中的并发更新:是否锁定?

我糊涂了.我正在读Oracle中的MVCC.我以为MVCC意味着没有锁.但是,UPDATE无论隔离级别如何,我都在其他地方读到所有自动锁定.有人可以解释Oracle更新期间会发生什么吗?当多个读取提交的事务尝试并发时会发生什么update t set c = c + 1 where id = 3.结果是什么,在任一交易之前给定c = 1,以及锁和SCN发生了什么?

Begin T1
Begin T2
T1:  update t set c = c + 1 where id = 3
T2:  update t set c = c + 1 where id = 3
Commit T1
Commit T2
Run Code Online (Sandbox Code Playgroud)

database oracle concurrency transactions

6
推荐指数
1
解决办法
4018
查看次数

保持Git功能分支最新的策略

我喜欢让我的功能分支与开发保持同步.经常做"git merge --no-ff develop"有什么不对吗?然后在最后,运行"git flow feature finish feature1".这些功能分支是共享的(这意味着其他人可能正在使用它,或者我正在家里的计算机上开发它),主要是因为我喜欢知道它们在其他地方备份.如果他们没有被分享,是否会优先考虑变基?

或者,最好不要让你的功能分支保持最新状态,最后将所有功能合并在一起?

git merge fast-forward git-flow

5
推荐指数
1
解决办法
1362
查看次数

获取周一和周日以及去年的周一和周日,同一周

鉴于datetime.datetime.now(),考虑到闰年,我如何得到本周的周一 - 周日,然后是去年的同一周一 - 周日?

我的一个想法是获得-365天的timedelta,然后找到最近的星期一或星期日.我相信有更好的方法.

编辑:我不介意使用datetuil,如果有什么东西让这更容易.

python date

5
推荐指数
1
解决办法
1562
查看次数

日期差异的直方图

我有一个降序日期的排序列表.如何获得当前行上的日期与下一行上的日期之间差异的概率历史记录?我想想象一下请求进入频率的频率.

09/11/2011 13:46:39
09/11/2011 13:45:18
09/11/2011 13:44:58
09/11/2011 13:40:02
09/11/2011 13:37:58
09/11/2011 13:36:09
09/11/2011 13:32:31
09/11/2011 13:25:29
09/11/2011 13:24:40
09/11/2011 13:23:48
Run Code Online (Sandbox Code Playgroud)

ps我之前从未使用过R,所以代码越多越好.谢谢.

r

3
推荐指数
1
解决办法
929
查看次数

Rails to_json使用不同的DATE_FORMATS .to_s

在我的rails_defaults.rb中有以下内容:

Date::DATE_FORMATS[:default] = '%m/%d/%Y'
Time::DATE_FORMATS[:default]= '%m/%d/%Y %H:%M:%S'
Run Code Online (Sandbox Code Playgroud)

为什么以下结果不同:

ruby-1.9.2-p180 :005 > MyModel.find(2).to_json(:only => :start_date)
 => "{\"start_date\":\"2012-02-03\"}" 

ruby-1.9.2-p180 :006 > MyModel.find(2).start_date.to_s
 => "02/03/2012" 
Run Code Online (Sandbox Code Playgroud)

更重要的是,我该如何to_json使用%m/%d/%Y

ruby-on-rails date-format

3
推荐指数
1
解决办法
3340
查看次数

after_commit没有被调用

我有after_commit设置为folllows.

class MyModel < ActiveRecord::Base
  after_commit { Rails.logger.info ("commit here") }

  # ...
end
Run Code Online (Sandbox Code Playgroud)

然后我在事务中包装update_all,它不会触发回调,它应该触发一个回调.

MyModel.transaction do
  MyModel.update_all(col: 'awesome')
end
Run Code Online (Sandbox Code Playgroud)

为什么不发布after_commit?我在日志中看不到"在这里提交".它适用于破坏就好了.

activerecord ruby-on-rails

3
推荐指数
1
解决办法
1476
查看次数

如何为此热图创建矩阵?

我有

Person,Messages
Dave,8
James,6
Dave,6
Dave,8
Dave,8
John,5
John,5
John,20
Dave,0
....
Run Code Online (Sandbox Code Playgroud)

我想创建一个热图,其中显示所有玩家的每条消息的消息密度.我想在x轴上将它限制为0-14个消息值(换句话说,我关心John有20个它应该影响整体密度,但我不在乎看到20个列在x轴上,因为它不经常发生).玩家姓名位于y轴上.我该怎么做呢?如果这没有意义,请告诉我.

r

2
推荐指数
1
解决办法
341
查看次数

如何将已部署的git修订写到Capistrano中的文件

我使用Capistrano部署我的Rails应用程序。如何写出部署到public_html / revision.txt的git修订版?

git capistrano

2
推荐指数
1
解决办法
1467
查看次数

rake db:create给我"......(在master)没有签出",运行bundle install

我很难过.我成功运行bundle install:

bundle install

...
Using activerecord-oracle_enhanced-adapter (1.4.1) from git://github.com/rsim/oracle-enhanced.git (at master)
...
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
Run Code Online (Sandbox Code Playgroud)

但是,当我运行rake db:create时,我得到以下内容

vagrant@lucid32:/vagrant$ rake db:create
(in /vagrant)
git://github.com/rsim/oracle-enhanced.git (at master) is not checked out. Please run `bundle install`
Run Code Online (Sandbox Code Playgroud)

试试这个:

vagrant@lucid32:/vagrant$ bundle exec db:create
bundler: command not found: db:create
Install missing gem executables with `bundle install`
Run Code Online (Sandbox Code Playgroud)

在我的Gemfile中:

gem 'activerecord-oracle_enhanced-adapter', '~>1.4.1', :git => 'git://github.com/rsim/oracle-enhanced.git'
Run Code Online (Sandbox Code Playgroud)

这是在Ubuntu上,安装了ruby 1.8.7.我正在运行1.9.2p290 w/rbenv.

ruby ruby-on-rails bundler

1
推荐指数
1
解决办法
1361
查看次数