小编Rob*_*obM的帖子

如何在git rebase期间通过哈希识别冲突提交?

当我遇到使用合并冲突时git rebase,如何根据提交识别冲突的来源,而不仅仅是文件差异?

我已经知道如何使用(git mergetool或基本)使用或git add之前git rebase --continue,但有时文件之间的差异是不够的:我想看到提交的提交日志和差异,但未能应用于工作树.

我已经读过其他问题,git log --merge如果我使用的话会显示父提交git merge.当我遇到冲突并被告知时,我还是尝试过fatal: --merge without MERGE_HEAD?.

如何识别有问题的提交?

git merge git-rebase

40
推荐指数
4
解决办法
6625
查看次数

git-diff如何生成大块描述?

(git版本1.6.5.7)

当我运行git diff输出时,我的Python脚本的行号后面有一个很好的范围提示,例如:

diff --git a/file.py b/file.py
index 024f5bb..c3b5c56 100644
--- a/file.py
+++ b/file.py
@@ -14,6 +14,8 @@ TITF: Test Infrastructure Tags Format
...
@@ -1507,13 +1533,16 @@ class Tags( object ):
...
Run Code Online (Sandbox Code Playgroud)

请注意,行号后跟TITF: Test Infrastructure Tags Formatclass Tags( object ):.第一个补丁适用于模块范围,描述TITF: Test Infrastructure Tags Format是模块的描述.第二个补丁适用于Tags该类的方法.

  1. git如何生成这些描述?
  2. 如何调整它们以显示修补程序适用的方法名称?

python git diff

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

Python doctest:跳过整个块?

我在类方法中有一个包含docstrings的Python模块,在模块docstring中有一个真实的例子.区别在于方法文档字符串经过精心设计,是完全可重复的测试,而真实世界的例子只是Linux shell中历史的一个副本 - 它碰巧调用了python解释器.

例如

"""
Real-world example:

# python2.5
Python 2.5 (release25-maint, Jul 20 2008, 20:47:25)
[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from packagename import module
>>> module.show_real_world_usage()
'Hello world!'
"""

class SomeClass(object):
    def someMethod(self):
        """
        >>> 1 == 1
        True
        """
Run Code Online (Sandbox Code Playgroud)

我想运行doctest SomeClass.someMethod,但不是在模块的docstrings中.

Doctest的+SKIP指令仅适用于每行,这意味着在我的真实世界示例中添加10行.丑陋!

有没有办法让doctest跳过整个块?有点像<!-- ... -->HTML?

python doctest

12
推荐指数
2
解决办法
5549
查看次数

为什么Python装饰器不能跨定义链接?

为什么以下两个脚本不等同?

(取自另一个问题:了解Python装饰器)

def makebold(fn):
    def wrapped():
        return "<b>" + fn() + "</b>"
    return wrapped

def makeitalic(fn):
    def wrapped():
        return "<i>" + fn() + "</i>"
    return wrapped

@makebold
@makeitalic
def hello():
    return "hello world"

print hello() ## returns <b><i>hello world</i></b>
Run Code Online (Sandbox Code Playgroud)

并有装饰装饰:

def makebold(fn):
    def wrapped():
        return "<b>" + fn() + "</b>"
    return wrapped

@makebold
def makeitalic(fn):
    def wrapped():
        return "<i>" + fn() + "</i>"
    return wrapped

@makeitalic
def hello():
    return "hello world"

print hello() ## TypeError: wrapped() takes no …
Run Code Online (Sandbox Code Playgroud)

python decorator

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

Git:按行号*将部分(已更改)文件添加到索引*

是否有一个git命令可以将一系列行号中的差异添加到索引中?

我希望能够在我的编辑器中选择行并运行宏来将选择中的任何更改添加到索引中.

git

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

Python:为什么我不能在课堂上使用`super`?

为什么我不能super用来获取类的超类的方法?

例:

Python 3.1.3
>>> class A(object):
...     def my_method(self): pass
>>> class B(A):
...     def my_method(self): pass
>>> super(B).my_method
Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    super(B).my_method
AttributeError: 'super' object has no attribute 'my_method'
Run Code Online (Sandbox Code Playgroud)

(当然,这是一个简单的案例,我可以做A.my_method,但我需要这个钻石继承案例.)

根据super文件,似乎我想要的应该是可能的.这是super文件:(强调我的)

super() - >相同 super(__class__, <first argument>)

super(type) - >未绑定的超级对象

super(type, obj)- >绑定super 对象; 要求isinstance(obj, type)

super(type,type2) - >绑定超级对象; 需要issubclass(type2,type)

[编辑的非相关示例]

python class super python-3.x

7
推荐指数
2
解决办法
501
查看次数

在运行时更改MySQL innodb_buffer_pool_size?

这可能是一个愚蠢的问题,但是是否可以innodb_buffer_pool_size在运行时更改MySQL配置选项 ?

或者,是否等效地,有一种方法可以在不关闭现有连接或拒绝新连接的情况下重新加载MySQL(就像您可以使用Apache一样)?

Linux_32(2.6.26)+ MySQL 5.0.24a

mysql sysadmin reload

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

列出其他人的提交(即不是我)?

有没有一种标准方法可以列出其他人(即不是我自己)在git存储库中提交的所有提交?

我尝试过git log --not --author=username,但似乎--not只适用于修订.该联机帮助页git log似乎没有提供一种方法来反转谓词--author.

(我git-svn在工作中使用,想要一种方式来看看我上次跑步以来我的同事发生了什么变化git svn rebase,或者更常见的是在最后X几天.通常我知道我改变了什么,我只想看看其他人触及了哪些文件/阅读他们的提交日志消息/可能会审查有趣的补丁/等)

编辑: 精炼范围,我实际上对"最近"而不是"自上次git svn rebase" 以来更感兴趣.

git version-control

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

SQL Alchemy 和生成 ALTER TABLE 语句

我想以编程方式ALTER TABLE在 SQL Alchemy 中生成语句以向表中添加新列。要添加的列应从现有映射类中获取其定义。

那么,给定一个 SQL Alchemy实例,我可以生成和Column所需的 SQL 模式定义吗?ALTER TABLE ... ADD COLUMN ...CREATE INDEX ...

我在 Python 提示符下玩过游戏,并且能够看到我想要的数据的人类可读的描述:

>>> DBChain.__table__.c.rName
Column('rName', String(length=40, convert_unicode=False, assert_unicode=None, unicode_error=None, _warn_on_bytestring=False), table=<Chain>)
Run Code Online (Sandbox Code Playgroud)

当我调用engine.create_all()调试日志时,包含我想要生成的 SQL 语句:

CREATE TABLE "Chain" (
        ...
        "rName" VARCHAR(40),
        ...
)
CREATE INDEX "ix_Chain_rName" ON "Chain" ("rName")
Run Code Online (Sandbox Code Playgroud)

我听说过sqlalchemy-migrate,但这似乎是围绕静态更改构建的,我希望动态生成架构更改。

(我对捍卫这种设计不感兴趣,我只是在寻找一种方言可移植的方法来向现有表添加列。)

sqlalchemy

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

Python:为什么我不能使用locals()修改函数中的当前范围?

为什么创建/修改locals()的成员在函数内不起作用?

Python 2.5 (release25-maint, Jul 20 2008, 20:47:25)
[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)] on linux2
Type "help", "copyright", "credits" or "license" for more information.

>>> # Here's an example of what I expect to be possible in a function:
>>> a = 1
>>> locals()["a"] = 2
>>> print a
2

>>> # ...and here's what actually happens:
>>> def foo():
...  b = 3
...  locals()["b"] = 4
...  print b
...
>>> foo()
3
Run Code Online (Sandbox Code Playgroud)

python scope introspection

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