我想将分支重置为某个提交,但仍保留其历史记录。例如,给定这个分支:
A - > B - > ç
我想创建一个新的提交A*
,使A
的分支和A*
的分支完全相同,历史记录如下:
A - > B - > C - > A *
这可以在git中使用吗?
答案 0 :(得分:4)
我可以考虑使用<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="Default.aspx">Gestione Azienda</a>
</div>
<div class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<!--<li class="active"><a href="#">Link</a></li>-->
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Elenco commesse<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a runat="server" href="~/elenco.aspx?societa=1">1</a></li>
<li><a runat="server" href="~/elenco.aspx?societa=2">2</a></li>
<li><a runat="server" href="~/elenco.aspx?societa=3">3</a></li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Gestisci commessa<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a runat="server" href="~/1.aspx/#tab-1">1</a></li>
<li><a runat="server" href="~/2.aspx/#tab-2">2</a></li>
<li><a runat="server" href="~/3.aspx/#tab-3">3</a></li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Impostazioni<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a runat="server" href="~/impostazioni.aspx">Impostazioni Generali</a></li>
<li><a runat="server" href="~/GestioneUtenti.aspx">Gestione utenti</a></li>
</ul>
</li>
<li><a id="A1" runat="server" href="~/ProgLavori.aspx" target="_blank">Programmazione lavori</a></li>
<li><a runat="server" href="http://" target="_blank">Posta</a></li>
<li><a id="menu_logout" runat="server" onserverclick="logout">Logout</a></li>
<li><a id="menu_login" runat="server" href="~/Default.aspx">Login</a></li>
</ul>
</div>
</div>
</nav>
的两种方法。
还原最后两次提交。这会创建两个新提交。我在这里使用git revert
标志,因此它不会提示您为每个恢复提交一条提交消息。
--no-edit
然后,既然你想要一个提交而不是两个提交,那么做一个交互式的rebase来压缩刚刚创建的两个revert提交。
git revert --no-edit HEAD^^..HEAD
git rebase -i HEAD^^
还原,然后提交使用--no-commit
标志,--no-commit
不提交任何内容,只是对工作树和索引进行更改。
git revert
然后你可以提交更改。
git revert --no-commit HEAD^^..HEAD
答案 1 :(得分:3)
使用git revert
。阅读一个不错的tutorial by Atlassian。