我想使用git作为自动文件夹历史记录。我的流程或多或少如下:
vagrant up
或vagrant provision
)我想到的想法是:
1.为我的命令创建一个别名(在bash或powershell中取决于操作系统)
2.在别名中始终运行git add .
和git commit -m "txt"
,然后运行" real"命令
但是上面的想法看起来很丑陋(例如" txt"总是静止的,并没有描述任何东西)。有没有人看到更好的东西?
答案 0 :(得分:1)
可以定义bash函数来创建更高级的别名。
在您的情况下,它可能如下所示:
[alias]
...
my_alias = "!f() { git add "./$GIT_PREFIX"; git commit -m '$1'; vagrant up; }; f"
!
告诉git在bash上执行别名(非git别名)
git my_alias "my commit message"
这将添加当前目录及其子目录中的所有文件,使用指定的消息提交它们,然后启动 vagrant 。
另一方面,这样的非git别名将始终在存储库的根目录中执行,这意味着使用 git add .
会导致整个存储库被添加到索引。
目前我没有看到解决此限制的简单方法,因此您可能需要先手动添加有问题的文件。
编辑 Etan提到了GIT_PREFIX
变量的存在,正是出于此目的。我相应地编辑了答案。