相关疑难解决方法(0)

Windows中的Git符号链接

我们的开发人员使用基于Windows和Unix的操作系统.因此,在Unix机器上创建的符号链接成为Windows开发人员的问题.在windows(msysgit)中,符号链接将转换为文本文件,其中包含指向其所指向文件的路径.相反,我想将符号链接转换为实际的Windows符号链接.

我需要的(更新的)解决方案是:

  • 编写一个post-checkout脚本,以递归方式查找"symlink"文本文件.
  • 将它们替换为具有与虚拟"symlink"相同名称和扩展名的windows符号链接(使用mklink)
  • 通过在.git/info/exclude中添加条目来忽略这些windows符号链接

我没有实现这个,但我相信这是解决这个问题的可靠方法.

问题:

  1. 你对这种方法有什么不利之处呢?
  2. 这个结账后脚本是否可以实现?即我可以递归地找出git创建的虚拟"符号链接"文件吗?
  3. 有没有人已经在这样的脚本上工作过?

windows git symlink

227
推荐指数
11
解决办法
9万
查看次数

git:symlink /对外部存储库中文件的引用

在git中是否可以在git仓库中拥有指向特定文件的"链接"?就像git子模块对文件夹所做的那样,但我的问题是关于特定文件,而不是完整目录:

my-project/
    class1.java
    class2.java
    logback.xml (link to a particular file, say https://github.com/theHilikus/JRoboCom/blob/master/jrobocom-core/src/main/resources/logback.xml)
Run Code Online (Sandbox Code Playgroud)

可以看出,在这种情况下,拥有一个完整的子模块文件夹是没有意义的,它只是一个文件.
我很好,链接被锁定到一个特定的提交,但如果它在它自己的项目的生命周期中发生变化,它会更好

需要注意的是,这与文件系统的符号链接无关; 我在谈论对另一个项目,repo,branch或任何东西中的文件的引用.如果文件的内容是重复的而不是文件系统符号链接,那就没问题

git

29
推荐指数
1
解决办法
2万
查看次数

git:如何从项目中分离库?filter-branch,subtree?

所以,我有一个更大的(闭源)项目,并且在这个项目的上下文中创建了一个在其他地方也可以使用的库,我想.

我现在想要在自己的项目中拆分库,它可以作为github或类似的开源.当然,图书馆(及其历史)应该不包含我们项目的痕迹.

git-subtree在这里似乎是一个解决方案,但它并不完全适合.

我的目录布局是这样的(因为它是一个Java项目):

  • 击剑比赛 (git workdir)
    • SRC
        • fencing_game
          • 运输 (我的图书馆)
            • 协议 (图书馆的一部分)
            • fencing (与库连接的主项目的一部分)
            • 客户端(与库连接的主项目的一部分)
            • server (与库连接的主项目的一部分)
          • 客户(主要项目的一部分)
          • 服务器(主项目的一部分)
          • ...... (主要项目的一部分)
    • 其他文件和目录(构建系统,网站等 - 主要项目的一部分)

拆分后,我希望库的目录布局如下所示(包括直接在粗体目录中的任何文件):

  • 我的图书馆(名字待定)
    • SRC
        • fencing_game
          • 运输 (我的图书馆)
            • 协议 (图书馆的一部分)

历史记录还应该只包含主项目历史中涉及存储库这一部分的部分.

第一眼看到了我git-subtree split --prefix=src/de/fencing_ame/transport,但这会

  1. 给我一棵树根transport(不会编译)和
  2. 包括transport/client,transport/servertransport/fencing目录.

第一点可以通过git subtree add --prefix=src/de/fencing_ame/transport <commit>在接收端使用来缓解,但我不认为git-subtree可以对导出这些子目录做很多事情.(这个想法真的是只能在这里分享完整的树).

我必须在git filter-branch这里使用吗?

拆分后,我希望能够导入回库在我的主要项目中,无论是使用Git树或混帐子模块,在一个单独的子目录,而不是它现在是.我想象这样的布局

  • 击剑比赛 (git workdir)
    • SRC
        • fencing_game
          • 运输 (空)
            • fencing (与库连接的主项目的一部分)
            • 客户端 …

git git-submodules git-filter-branch git-subtree

23
推荐指数
1
解决办法
5501
查看次数

如何跨文件夹或存储库共享文件

我正在编写一个代码片段,它必须跨多个主题.

假设我有三个主题:

  • 橙子
  • 绿色
  • 蓝色

每个主题都有一个名为"snippets"的文件夹,我将代码片段放在那里.

  • 橙/段/ code.html
  • 绿/段/ code.html
  • 蓝/段/ code.html

每个主题的"code.html"文件都完全相同.我在它自己的GitHub仓库中跟踪它,然后复制并粘贴到每个主题仓库.

如何在一个位置编辑此代码段并确保它在所有主题中都得到更新?我正在寻找一种可扩展的方法,一旦主题数量可能增长到20-30.

在我的情况下,我有更多的文件然后一个例子与"code.html" - 他们在两个文件夹,总量大约是10.

我正在阅读关于Git子模块的内容,但我不相信它们适合我的问题.我不确定这个问题是否与Git有关,对不起.

PS我正在研究SaaS - 确切地说是Shopify.因此,在这种情况下,任何类型的PHP技巧都不起作用.我需要在本地以某种方式处理文件.

编辑:现实生活中的例子:

我有这4个文件:

{{ theme }}/snippets/file1.liquid
{{ theme }}/snippets/file2.liquid
{{ theme }}/assets/file3.liquid
{{ theme }}/assets/file4.liquid
Run Code Online (Sandbox Code Playgroud)

我无法创建子目录或其他目录.

git version-control workflow

7
推荐指数
1
解决办法
409
查看次数

单个dockerfiles GitHub存储库+ Docker Hub自动构建

我想dockerfiles在GitHub上创建一个存储库以集中Dockerfile我到目前为止创建的所有自定义代码。我还想独立地自动在Docker Hub上自动化每个映像的构建。

GitHub上有很多这样的存储库:

(我不会在这里谈论最繁星的存储库:https : //github.com/jessfraz/dockerfiles,因为正如您在Docker Hub上看到的那样,这些不是自动构建)

想要的dockerfiles存储库结构

我希望我的dockerfilesGitHub存储库具有以下结构(分支master),基于上面提到的GitHub存储库:

dockerfiles (GitHub repo)
    |- docker-image-1
        |- Dockerfile
    |- docker-image-2
        |- Dockerfile
    |- ...
Run Code Online (Sandbox Code Playgroud)

Docker Hub构建自动化

组态

在Docker Hub上,我可以创建2个公共自动化构建版本:docker-image-1docker-image-2,都引用我的dockerfilesGitHub存储库,但是构建设置不同(实际上,只有Dockerfile位置不同):

  • docker-image-1
    • 类型:分支
    • 姓名:主人
    • Dockerfile位置/ docker -image-1 /
    • Docker标记名称:最新
  • docker-image-2
    • 类型:分支
    • 姓名:主人
    • Dockerfile位置/ …

git docker dockerhub

6
推荐指数
1
解决办法
267
查看次数