OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
5 | 5 |
6 """ | 6 """ |
7 lastchange.py -- Chromium revision fetching utility. | 7 lastchange.py -- Chromium revision fetching utility. |
8 """ | 8 """ |
9 | 9 |
10 import re | 10 import re |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
101 """ | 101 """ |
102 hsh = '' | 102 hsh = '' |
103 proc = RunGitCommand(directory, ['rev-parse', 'HEAD']) | 103 proc = RunGitCommand(directory, ['rev-parse', 'HEAD']) |
104 if proc: | 104 if proc: |
105 output = proc.communicate()[0].strip() | 105 output = proc.communicate()[0].strip() |
106 if proc.returncode == 0 and output: | 106 if proc.returncode == 0 and output: |
107 hsh = output | 107 hsh = output |
108 if not hsh: | 108 if not hsh: |
109 return None | 109 return None |
110 pos = '' | 110 pos = '' |
111 proc = RunGitCommand(directory, ['show', '-s', '--format=%B', 'HEAD']) | 111 proc = RunGitCommand(directory, ['cat-file', 'commit', 'HEAD']) |
112 if proc: | 112 if proc: |
113 output = proc.communicate()[0] | 113 output = proc.communicate()[0] |
114 if proc.returncode == 0 and output: | 114 if proc.returncode == 0 and output: |
115 for line in reversed(output.splitlines()): | 115 for line in reversed(output.splitlines()): |
116 if line.startswith('Cr-Commit-Position:'): | 116 if line.startswith('Cr-Commit-Position:'): |
117 pos = line.rsplit()[-1].strip() | 117 pos = line.rsplit()[-1].strip() |
118 if not pos: | 118 if not pos: |
119 return VersionInfo('git', hsh) | 119 return VersionInfo('git', hsh) |
120 return VersionInfo('git', '%s-%s' % (hsh, pos)) | 120 return VersionInfo('git', '%s-%s' % (hsh, pos)) |
121 | 121 |
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
290 if header: | 290 if header: |
291 WriteIfChanged(header, | 291 WriteIfChanged(header, |
292 GetHeaderContents(header, opts.version_macro, | 292 GetHeaderContents(header, opts.version_macro, |
293 version_info.revision)) | 293 version_info.revision)) |
294 | 294 |
295 return 0 | 295 return 0 |
296 | 296 |
297 | 297 |
298 if __name__ == '__main__': | 298 if __name__ == '__main__': |
299 sys.exit(main()) | 299 sys.exit(main()) |
OLD | NEW |