小编kro*_*onz的帖子

尝试撤消时的冲突更改Subversion中的示例

在探索Subversion中的功能时,我试图测试svnbook的Branching and Merging章节的Basic Merging部分的Undoing Changes子部分中描述的用例.我使用的是1.6.4版本,但该部分的文本在本书的两个版本中都是相同的.

在我的工作副本目录中,我编辑一个文件testcode.py,每次编辑添加一行,并在每次编辑后提交.几次提交后,文件内容如下:

this is my first import to trunk.  r1.

this is my first commit, first edit of testcode.py.  r2.

this is another edit of testcode.py.  r3.

this is an edit of testcode.py.  i'll get rid of this one.  r4.

this is another edit of testcode.py.  keeping it.  r5.

yet another edit.  keeping it.  r6.
Run Code Online (Sandbox Code Playgroud)

存储库中的修订号与文件中的行匹配,以便在/trunk/testcode.py@rN中,文件的最后一行是以rN结尾的行.我想要做的是删除以r4结尾的行,保持之前和之后的所有其他内容不变.

按照svnbook的Undoing Changes部分中的示例,我运行命令

svn merge -c -4 file:///path_to_repos/trunk
Run Code Online (Sandbox Code Playgroud)

这会产生冲突(在运行该命令时,而不是在提交时),其中merge-left文件包含直到第r4行的所有内容,而merge-right文件包含直到第r3行的所有内容.换句话说,该命令似乎想要将整个文件还原为版本3或4,而不是删除过去的更改,从而删除后续修订中的更改(在本例中为5和6).

我在svnbook中读取示例的方式,其中用户反转在修订版303中提交的更改并将结果提交到修订版350而没有冲突,我运行的命令应该生成一个svn状态为M的文件,该文件保留所有除了以r4结尾的那一行.

我是否错误地阅读了本书的示例,示例是错误的,还是存在其他形式的用户错误,我陷入了不知情的境地?

svn merge

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

使用Django DecimalField和PostgreSql数字字段保持输出精度

我正在通过Django将数据保存到PostgreSQL后端.我的模型中的许多字段都是DecimalFields设置为任意高的max_digits和decimal_places,对应于数据库后端中的数字列.每列中的数据具有先验未知的精度(或小数位数),并且给定列中的每个数据不需要具有相同的精度.

例如,模型的参数可能如下所示:

{'dist': Decimal("94.3"), 'dist_e': Decimal("1.2")}
{'dist': Decimal("117"), 'dist_e': Decimal("4")}
Run Code Online (Sandbox Code Playgroud)

其中键是数据库列名.

在输出时,我需要以读取它们的精度保留和重新显示这些数据.换句话说,在查询数据库之后,显示的数据看起来应该与读入的数据完全相同,没有额外的数据.或者在小数中缺少尾随0.但是,当在django shell或admin界面中查询时,所有DecimalField数据都会返回许多尾随0.

我已经看到类似的问题回答金钱值,其中精度(2位小数)是已知的,并且对于给定列中的所有数据都是相同的.但是,当精度不相同且事先不知道时,如何最好地保留Django中的Decimal值和PostgreSQL中的数值所表示的精确精度?

编辑:

可能是另一个有用的信息:当在Django dbshel​​l中查看保存数据的表时,也会出现许多尾随0.在保存到PostgreSQL后端时,python Decimal值显然转换为models.py文件中指定的最大精度值.

django postgresql precision

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

标签 统计

django ×1

merge ×1

postgresql ×1

precision ×1

svn ×1