我有几个关于 Grit/Git 的问题,希望你能帮助我。这是我的代码:
# create Repo
r = Repo.init_bare 'myrepo.git'
i = r.index
# first commit to master
i.add('myfile.txt', 'my file contents')
i.commit("This is my commit")
# second commit to master
i.read_tree("master")
i.add('myfile2.txt', 'my file 2 contents')
i.commit("This is my second commit", [r.commits.first])
# first commit to newbranch
i.read_tree("master")
i.add('myfile3.txt', 'my file 3 contents')
i.commit("This is my third commit", [r.commits.first], nil, nil, 'newbranch')
# second commit to newbranch
i.read_tree("newbranch")
i.add('myfile4.txt', 'my file 4 contents')
i.commit("This is my fourth commit", [r.commit("newbranch")], nil, nil, 'newbranch')
使用此代码,我试图创建一个 repo,两次提交给 master,从 master 创建一个新分支,然后提交两次到这个分支。但问题是当我这样做时:
r.commits("newbranch") # => 3
它说“newbranch”上只有 3 次提交。它忽略了对 master 的第二次提交。这是为什么?我的代码有问题吗?
我最困惑的是如何在分支时指定父提交,以及在“newbranch”上进行第二次提交时。
希望你能帮忙。谢谢