【问题标题】:Best practice for Cloning and Committing the "Wiki" repo for a BitBucket project克隆和提交 BitBucket 项目的“Wiki”存储库的最佳实践
【发布时间】:2013-02-13 23:40:22
【问题描述】:

在 BitBucket 中,您可以为项目创建 Wiki。但是,Wiki 本身是一个与源代码库分开的代码库。当您克隆它时,它会创建一个名为“wiki”的存储库。

克隆此存储库的理想或常规位置在哪里?你把它放在源代码库中吗?如果是这样,您在从源代码库提交时是否 .gitignore /wiki?或者您是否在源代码库中包含 wiki 代码库?

推送时,您是否提交了两次,一次是在源代码库中,一次是在 wiki 代码库中?或者您可以修改源的 git 以同时提交源和 wiki 吗?

谢谢。

【问题讨论】:

    标签: commit wiki bitbucket


    【解决方案1】:

    我为存储库维护以下结构。

    这个想法是维护代码仓库和它的相关维基作为兄弟姐妹。这样就不需要告诉 .gitignore 忽略任何 wiki 相关文件。 此外,您只需推送到您正在进行更改的存储库。 希望,这就是你要找的。​​p>

    【讨论】:

    • 我一开始就想这样做,但似乎创建子模块是为了帮助我们避免这样的事情:-)
    【解决方案2】:

    理想的方式是使用 Git 的子模块功能:

    $ cd project
    $ git submodule add https://bitbucket.org/user/project.git/wiki
    

    这会创建一个文件夹wiki.gitmodules 文件,然后:

    $ cd wiki
    $ nano Home.md
    

    更改文件中的一些信息,并且:

    $ git add .
    $ git commit -m "Some comment"
    $ git push origin master
    

    返回项目:

    $ cd ..
    $ git add .
    $ git commit -m "Added wiki module"
    $ git push [remoteName] [remoteBranch]
    

    有了这个项目 repo 将生成一个链接到一个特定的 wiki repo 提交,你可以只更新其中一个。

    我希望这会有所帮助。

    更多信息:https://git-scm.com/book/en/v2/Git-Tools-Submodules

    【讨论】:

    • 确实,使用 repo 作为子模块是正确的方法。拥有一个 .gitmodules 文件并不比将您的项目拆分为 2 个单独的存储库/文件夹更糟糕。
    • @deoxyseia 是否需要在 .gitignore 文件夹中将 wiki 文件夹标记为已忽略?
    • @emeraldjava 不是必需的,.gitmodules 文件处理这个文件夹,push 命令只链接到wiki repo。
    猜你喜欢
    • 1970-01-01
    • 2017-12-07
    • 2016-05-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-23
    • 2017-03-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多