mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 17:50:22 +00:00
48 lines
1.0 KiB
Python
48 lines
1.0 KiB
Python
#!/usr/bin/env python
|
|
|
|
import os
|
|
import sys
|
|
|
|
def main():
|
|
|
|
# usage string
|
|
usage = 'usage: gitall command'
|
|
|
|
# command check
|
|
if len(sys.argv) < 2:
|
|
sys.exit(usage)
|
|
|
|
command = 'git ' + ' '.join(sys.argv[1:])
|
|
printDelimiter()
|
|
print 'Running command:', command
|
|
|
|
# get a list of git directories in the specified parent
|
|
gitDirectories = getSubdirectories('.', isGitDirectory)
|
|
|
|
for gitDirectory in gitDirectories:
|
|
os.chdir(gitDirectory)
|
|
printDelimiter()
|
|
print 'Current respository location:', os.getcwd()
|
|
os.system(command)
|
|
|
|
printDelimiter()
|
|
|
|
def getSubdirectories(directory, filter = None):
|
|
directory = os.path.abspath(directory)
|
|
subdirectories = os.walk(directory).next()[1]
|
|
if filter is None:
|
|
return [directory + '/' + i for i in subdirectories]
|
|
else:
|
|
return [directory + '/' + i for i in subdirectories if filter(directory + '/' + i)]
|
|
|
|
def isGitDirectory(directory):
|
|
return os.path.isdir(directory + '/.git/')
|
|
|
|
def printDelimiter():
|
|
print '\033[91m'
|
|
print ('#' * 80)
|
|
print '\033[0m'
|
|
|
|
if __name__ == '__main__':
|
|
main()
|