Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
14 anos atrás
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. #!/usr/bin/env python
  2. import os, sys
  3. from py.build import version
  4. version.verbose = True
  5. def print_help():
  6. print "wnframework version control utility"
  7. print
  8. print "Usage:"
  9. print "python lib/wnf.py build : scan all folders and commit versions with latest changes"
  10. print "python lib/wnf.py setup : setup the local system (from master or fresh)"
  11. print "python lib/wnf.py merge [local|master] : merge from source (master or local)"
  12. print "python lib/wnf.py log : list last 10 commits"
  13. def run():
  14. sys.path.append('lib')
  15. sys.path.append('lib/py')
  16. if len(sys.argv)<2:
  17. print_help()
  18. return
  19. cmd = sys.argv[1]
  20. if cmd=='build':
  21. from py import build
  22. build.run()
  23. vc = version.VersionControl()
  24. print 'version %s' % vc.repo.get_value('last_version_number')
  25. elif cmd=='merge':
  26. vc = version.VersionControl()
  27. vc.setup_master()
  28. if sys.argv[2]=='local':
  29. vc.merge(vc.repo, vc.master)
  30. elif sys.argv[2]=='master':
  31. vc.merge(vc.master, vc.repo)
  32. else:
  33. print "usage: wnf merge local|master"
  34. print "help: parameter (local or master) is the source"
  35. vc.close()
  36. elif cmd=='setup':
  37. if not os.path.exists('versions-local.db'):
  38. if os.path.exists('versions-master.db'):
  39. import shutil
  40. shutil.copyfile('versions-master.db', 'versions-local.db')
  41. print "created versions-local.db from versions-master.db"
  42. else:
  43. vc = version.VersionControl()
  44. vc.repo.setup()
  45. vc.close()
  46. print "created fresh versions-local.db"
  47. else:
  48. if len(sys.argv)==3 and sys.argv[2]=='master':
  49. import shutil
  50. shutil.copyfile('versions-local.db', 'versions-master.db')
  51. print "created versions-master.db from versions-local.db"
  52. else:
  53. print "versions-local.db already exists. Nothing to do."
  54. elif cmd=='clear_startup':
  55. # experimental
  56. from webnotes import startup
  57. startup.clear_info('all')
  58. vc = version.VersionControl()
  59. print 'version %s' % vc.repo.get_value('last_version_number')
  60. elif cmd=='log':
  61. vc = version.VersionControl()
  62. for l in vc.repo.sql("select * from log order by rowid desc limit 10 ", as_dict =1):
  63. print 'file:'+ l['fname'] + ' | version: ' + l['version']
  64. print 'version %s' % vc.repo.get_value('last_version_number')
  65. vc.close()
  66. elif cmd=='files':
  67. vc = version.VersionControl()
  68. for f in vc.repo.sql("select fname from files where fname like ?", ((sys.argv[2] + '%'),)):
  69. print f[0]
  70. vc.close()
  71. if __name__=='__main__':
  72. run()