我想用https://github.com/mojombo/grit
实现修改git仓库代码。
r = Grit::Repo.new('/projects/atest.git').index
r.add('lib/test.rb', "aaaa")
r.commit("update test", [r.commits.first], Grit::Actor.new("test", "test@email.com"), nil, "master")
代码运行下来,是可以修改代码,但是却将这个仓库里面其他文件都删除了。。。
求高手该怎么写才对?
コマンドラインを使用する場合は、
git ls-tree -r 'master^{tree}'
的内容(上次提交的文件列表)和修改部分(写在后边)一同传递给git update-index --add --index-info
(git add
操作を使用します)。つまり、インデックスには未変更のファイルと変更されたファイル (新しいバージョンに組み込まれるすべてのファイル) が含まれています。それでは、未変更のファイルもインデックスに追加する必要があるでしょうか?
追記: グリットは git に依存します...