- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我的存储库中有一个目录结构:
|-repository/
| | |-repository/fileOne
| |
| |-subOne/
| | |-subOne/fileTwo
| |
| |-subTwo/
| |-subTwo/fileThree
我想将目录 subOne
移动到不同的存储库中。为此,我使用 git-filter-branch
分离 subOne
,如下所示:
$ git filter-branch --subdirectory-filter subOne --prune-empty
这给我留下了一个看起来像这样的分支历史:
$ git log --oneline
0c0ea11 subOne history
6318bba subOne history
c96fddb Initial commit
这正是我想要的;我可以从另一个存储库执行 git fetch
和 git merge
,这会将 subOne
和历史记录添加到另一个存储库中。太好了。
但是,git-filter-branch
已经删除了 subOne
。检查我分支上的目录结构:
$ ls
fileOne
$ pwd
/this/is/a/path/repository
pwd
应该读作:/this/is/a/path/repository
,但是ls
应该显示subOne
在存储库中。相反,我得到的是 subOne
中的文件向上移动,并且目录被删除。
如何在不丢失目录的情况下提取 subOne
?
最佳答案
pwd should read: /this/is/a/path/repository, but ls should show subOne inside the repository. What I've got instead is the files from subOne moved upwards, and the directory removed.
原来这是 git-filter-branch --subdirectory-filter
的默认操作。引用自 man git-filter-branch
:
The result will contain that directory (and only that) as its project root.
要解决此问题,我想将 /
中的所有内容移动到 /subdirectory
。幸运的是,man git-filter-branch
中的 EXAMPLES
下有一段看起来像巫术的代码:
To move the whole tree into a subdirectory, or remove it from there:
git filter-branch --index-filter \
'git ls-files -s | sed "s-\t\"*-&newsubdir/-" |
GIT_INDEX_FILE=$GIT_INDEX_FILE.new \
git update-index --index-info &&
mv "$GIT_INDEX_FILE.new" "$GIT_INDEX_FILE"' HEAD
编辑:这在 MAC OS X 上不起作用。看我的问题here想要查询更多的信息。 BSD sed
与 GNU sed
不同,这很烦人。要在 OS X 上运行该示例,请将 sed
更改为 gsed
;然后过滤器工作得很好。
关于git-过滤器分支 : leave directory structure unchanged,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9519863/
LOOP 一词被描述为“解析所有未解析的 LEAVE 事件的目的地”。 (强调我的) 与 IF ... ELSE ... THEN 的前向引用数始终为 1 不同,LOOP 对 LEAVE 的数量没有限
我正在尝试实现 Kd 树以在 C++ 中执行最近邻和近似最近邻搜索。到目前为止,我遇到了最基本的 Kd 树的 2 个版本。 一种,数据存储在节点和叶子中,例如 here 一种,数据只存储在叶子中,例如
我没有清楚地理解 LEAVE 函数,它是这两条指令的浓缩: MOV ESP, EBP POP EBP 因此,MOV ESP, EBP 将 ESP 向下移动到 EBP 的级别(堆栈的开头)。 然后POP
我有外部路线:/posts 和 /about。 /posts 路由具有嵌套路由:/ 和 /pages/:pageNumber。 在嵌套路由(/ 和 /pages/:pageNumber)之间导航时,动
我正在尝试在 JavaFX 中设置一个复选框树,其中叶子绑定(bind)到其父级: 当选择父级时,它们也会被选择 无法单独更改。 我使用与 selectedProperty 的绑定(bind)来完成此
程序如下: main:BEGIN # make sure a game isnt already running SELECT COUNT(*), `winner` INTO @running, @w
使用什么模式将字符保留在字符串中的点之间“12395.KS_TH014.001239”,所以如果其动态变量,则只剩下“KS_TH014”。我尝试了模式“.\K.*?(?=.)”,但它在 mysql 中
我有如下例子中的触发器: BEFORE UPDATE ON icharts_user_stats FOR EACH ROW BEGIN IF (NEW.col1> OLD.col1 OR NE
我正在为 iOS 编写一个应用程序来阅读 PDF 文档并使用“Leaves”库。除了宽度为 1px 的白线外,一切都很酷,它会在您翻过页面时出现。有没有人遇到过这个?你是如何解决这个问题的? 最佳答案
我写了以下函数 window.onbeforeunload = function(){ return 'Are you sure you want to leave?'; }; 现在我希望当用户单
我的网站上有以下 href: a href="http://www.google.com" name="external" onclick="confirmExit(this.name) 如果用户不想
我只看到了另一个类似的问题 ( this one ),但我不知道如何将其应用到我的页面。我是网络开发新手,所以我使用了 this template索取联系表格。您可以在这里查看我的联系页面:http:
我正在为我的元素使用 animate.css 和 Angular.JS。我创建了一个代码笔,您可以在这里找到它:http://codepen.io/SassyCrafter/pen/NrRbmE .以
我在几个地方都见过它,例如Eclipse XML 自动格式化也可以做到这一点:在空元素的结束 /> 之前放置一个空格。 拥有 将被重新格式化为 你为什么要这样做?从 XML 的角度来看,它是等价的
题目地址:https://leetcode.com/problems/sum-of-left-leaves/open in new window Difficulty: Easy 题目大
我正在尝试反汇编一个包含简单功能的简单程序。这个程序是用 gcc 编译的,用于 32 位 x86 目标。 该函数通过调用指令调用。 在函数的最后,我看到一个ret指令,这是正常的,但也有一个leave
我在这里学习 Docker 教程 https://docs.docker.com/get-started/part3/ 当我在页面教程快结束时执行命令 docker swarm leave --for
这个问题已经有答案了: How to show a dialog to confirm that the user wishes to exit an Android Activity? (11 个回
因此,我编写了这一小段代码来尝试一些新的方法来进行图像交换以实现预加载,但我遇到了一些麻烦。 我的问题是,我有一个包含图像的容器,其中有一些填充和文本,但只有当有人滚动图像而不是容器时,才会激活翻转。
我在div上使用hover()来在用户将鼠标移到上方时显示信息面板,这在90%的情况下有效,但有时事件似乎无法正确触发。这似乎与您将鼠标移入或移出 div 的速度有关。 我设置了一个 jsfiddle
我是一名优秀的程序员,十分优秀!