1234567891011121314151617181920212223242526272829 |
- #!/usr/bin/env python3
-
- import argparse
- import datetime
- import subprocess
-
- def main():
- parser = argparse.ArgumentParser(description="Perform a git commit at a different time")
- parser.add_argument("--minus", type=int, default=0, help="Hours to subtract")
- parser.add_argument("--plus", type=int, default=0, help="Hours to add")
- parser.add_argument("message", type=str, help="The commit message")
-
- args = parser.parse_args()
-
- minus = datetime.timedelta(hours=args.minus)
- plus = datetime.timedelta(hours=args.plus)
-
- date = datetime.datetime.now().astimezone() - minus + plus
- formatted_date = date.strftime("%a %b %d %Y %H:%M:%S %z")
-
- env = {
- "GIT_AUTHOR_DATE": formatted_date,
- "GIT_COMMITTER_DATE": formatted_date
- }
-
- subprocess.call(["git", "commit", "-m", args.message, "--date", formatted_date], env=env)
-
- if __name__ == "__main__":
- main()
|