我想用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")
代码运行下来,是可以修改代码,但是却将这个仓库里面其他文件都删除了。。。
求高手该怎么写才对?
Jika anda menggunakan baris arahan, kandungan
git ls-tree -r 'master^{tree}'
(senarai fail terakhir yang diserahkan) dan bahagian yang diubah suai (ditulis pada penghujung) dihantar ke operasigit update-index --add --index-info
(git add
). Iaitu, indeks mengandungi fail yang tidak diubah suai dan diubah suai (semua fail untuk dimasukkan ke dalam versi baharu).Jadi, mungkin anda perlu menambah fail yang tidak diubah suai pada indeks juga?
PS: pasir bergantung pada git...