人们对Python的任何Git模块有什么经验?(我知道GitPython,PyGit和Dulwich - 如果你了解它们,请随时提及其他人.)
我正在编写一个程序,它必须与Git存储库进行交互(添加,删除,提交),但没有使用Git的经验,因此我正在寻找的一个方面是易于使用/理解Git.
我最感兴趣的其他事情是库的成熟度和完整性,合理的缺陷,持续开发以及文档和开发人员的乐于助人.
如果你想到我可能想要/需要知道的其他东西,请随意提及.
我需要在过去的20个git提交(或范围)中搜索文本"TEXT"
我需要查看我匹配的文件名和行号.
注意:
我想搜索提交内容,但不想像那样提交项目git grep.
通过提交内容,我的意思是我可以看到使用git diff HEAD^^^..HEAD
我得到的最近的是git log --raw -GTEXT它,它显示我在提交内容和显示文件名中包含"TEXT"的提交.但是仍然没有行号.
并且有一些管道
git diff $(git log -n 20 --pretty=format:%h -GTEXT) | grep -E 'TEXT|\+\+\+|@@\s'
它仍然有点罗嗦和很多噪音,如果你有更好的解决方案,请回答.
是否有任何自动方法来验证Git仓库中的所有提交是否处于可编译状态?
我需要这个来验证我在重写历史后没有破坏任何东西.由于我正在重写历史记录,因此排除了构建服务器 - 在重写历史记录后,提交时提交的提交可能会被破坏.
例如,我有一个Visual Studio 2015 C#项目,我想象一些脚本如:
git filter-branch --tree-filter msbuild
Run Code Online (Sandbox Code Playgroud)
我希望它在每次提交时运行构建,并在构建过程返回非零时停止并显示错误消息.