У меня есть файл, который отслеживается с помощью bzr, и я хотел бы написать сценарий создания diff между его текущим (текущим, как в текущем, не последним зафиксированным) и последней подтвержденной версией , который помечен [ 110].
Кто-нибудь знает, как этого добиться? Не так много скриптов bzr или экспертов по Python.
Что-то вроде этого должно сработать:
#!/usr/bin/env python
import commands
import sys
import os
# Get the revision number of the most recent tagged commit.
tags = commands.getoutput("bzr tags --sort=time")
latest = tags.split()[-1]
target = sys.argv[-1]
if not os.path.isfile(target):
print "Error, no such file: '"+target+"'"
sys.exit(1)
print commands.getoutput("bzr diff "+target+" -r "+latest)
Использование:
python diff-from-tagged.py test
Вывод:
=== modified file 'test'
--- test 2011-01-08 19:20:31 +0000
+++ test 2011-01-08 20:00:12 +0000
@@ -1,1 +1,2 @@
dfsafd
+The quick brown fox