我们有分支机构起源和发展。master的初始状态标记在tag_ABC。我们对develop分支进行了一些更改并推送到origin。然后我们不小心将developmerge到master并推送到origin。现在我们想将master恢复到检查点tag_ABC。我们怎样才能做到这一点? 最佳答案 你可以做到gitcheckoutmastergitreset--hardtag_ABCgitpush--forceoriginmaster请注意,这将覆盖上游存储库中的现有历史记录,并可能给checkout此存储库的其他开发人员带来问题。根据L
我们有分支机构起源和发展。master的初始状态标记在tag_ABC。我们对develop分支进行了一些更改并推送到origin。然后我们不小心将developmerge到master并推送到origin。现在我们想将master恢复到检查点tag_ABC。我们怎样才能做到这一点? 最佳答案 你可以做到gitcheckoutmastergitreset--hardtag_ABCgitpush--forceoriginmaster请注意,这将覆盖上游存储库中的现有历史记录,并可能给checkout此存储库的其他开发人员带来问题。根据L
merge分支后,是否将其从版本库中删除?这是一个好的做法吗?我通常会创建很多分支,因为我不想破坏我当前的版本,我希望删除它们以保持秩序。但是,如果您使用Assembla或GitHub,您来自旧分支的merge请求将保存在站点上,因此如果您删除它们,您将收到错误消息,因为它无法获取它们...通常如何管理? 最佳答案 删除已merge的分支没有问题,所有的提交在历史中仍然可用,即使在GitHub界面中,它们仍然会显示(参见,例如thisPR,它指的是一个fork我在PR被接受后删除了)。
merge分支后,是否将其从版本库中删除?这是一个好的做法吗?我通常会创建很多分支,因为我不想破坏我当前的版本,我希望删除它们以保持秩序。但是,如果您使用Assembla或GitHub,您来自旧分支的merge请求将保存在站点上,因此如果您删除它们,您将收到错误消息,因为它无法获取它们...通常如何管理? 最佳答案 删除已merge的分支没有问题,所有的提交在历史中仍然可用,即使在GitHub界面中,它们仍然会显示(参见,例如thisPR,它指的是一个fork我在PR被接受后删除了)。
我们想为我们的项目实现一项新政策,即主分支现在称为发布分支,以确保更清楚应该如何使用该分支。当然,我们也会开发和发布候选分支。我知道我可以通过简单地使用以下命令在本地重命名master分支:gitbranch-mmasterrelease但是,那只是本地的。即使我将其推送到远程,HEAD仍指向远程master分支。我想完全摆脱master分支,并在初始克隆时创建默认的本地分支,然后发布。我怎样才能做到这一点?似乎因为原点在Gitorious上服务器,我在删除主分支时出错。我现在想看看是否可以更改它,以便默认分支为“发布”。 最佳答案
我们想为我们的项目实现一项新政策,即主分支现在称为发布分支,以确保更清楚应该如何使用该分支。当然,我们也会开发和发布候选分支。我知道我可以通过简单地使用以下命令在本地重命名master分支:gitbranch-mmasterrelease但是,那只是本地的。即使我将其推送到远程,HEAD仍指向远程master分支。我想完全摆脱master分支,并在初始克隆时创建默认的本地分支,然后发布。我怎样才能做到这一点?似乎因为原点在Gitorious上服务器,我在删除主分支时出错。我现在想看看是否可以更改它,以便默认分支为“发布”。 最佳答案
假设您的git提交历史如下所示:A---B---C---D---E---Fmaster\/X---Y---Ztopic是否可以让git只列出master、A-F上的提交?换句话说,如果提交是在merge的分支上,我不希望它显示。 最佳答案 gitlog有选项--first-parent,所以你不会得到topic历史记录。从mastermerge时,master提交是merge中的第一个父项。Git日志允许仅显示那些带有--first-parent的提交,因此您可以获得正确的内容。 关于G
假设您的git提交历史如下所示:A---B---C---D---E---Fmaster\/X---Y---Ztopic是否可以让git只列出master、A-F上的提交?换句话说,如果提交是在merge的分支上,我不希望它显示。 最佳答案 gitlog有选项--first-parent,所以你不会得到topic历史记录。从mastermerge时,master提交是merge中的第一个父项。Git日志允许仅显示那些带有--first-parent的提交,因此您可以获得正确的内容。 关于G
寻找像ls-R或dir/s这样可以列出提交/分支中所有文件的命令。有什么命令可以比较来自不同分支的两个文件吗? 最佳答案 gitls-tree-r--name-only(而不是可以有)。你可能还想使用-t在进入子目录之前列出子目录的选项gitdiff::,或者如果你想比较同一个文件gitdiff-- 关于Git:1.列出分支中的所有文件,2.比较来自不同分支的文件,我们在StackOverflow上找到一个类似的问题: https://stackoverflo
寻找像ls-R或dir/s这样可以列出提交/分支中所有文件的命令。有什么命令可以比较来自不同分支的两个文件吗? 最佳答案 gitls-tree-r--name-only(而不是可以有)。你可能还想使用-t在进入子目录之前列出子目录的选项gitdiff::,或者如果你想比较同一个文件gitdiff-- 关于Git:1.列出分支中的所有文件,2.比较来自不同分支的文件,我们在StackOverflow上找到一个类似的问题: https://stackoverflo