如何自动提交?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (29)

我想使用git来记录对文件的所有更改。

是否有一种方法可以让git‘提交’在每次更新文件时自动发生--那么,对于文件的每一个更改都有一个新的提交?

理想情况下,我希望我的用户甚至不知道git正在幕后运行。然后,用户可能会“撤销”对文件的更改--这可以通过从git中提取以前的版本来实现。

提问于
用户回答回答于

下面的命令保存后立即提交file.txt:

inotifywait -q -m -e CLOSE_WRITE --format="git commit -m 'autocommit on change' %w" file.txt | sh
用户回答回答于

下面是我在Debian上使用的跟踪日历文件所有更改的内容:

/etc/rc.local:

su -c /home/<username>/bin/gitwait -l <username>

/家庭/<username>/bin/gitWaet:

#!/bin/bash
#
# gitwait - watch file and git commit all changes as they happen
#

while true; do

  inotifywait -qq -e CLOSE_WRITE ~/.calendar/calendar

  cd ~/.calendar; git commit -a -m 'autocommit on change'

done

扫码关注云+社区