【问题标题】:How do I commit live code using GIT?如何使用 GIT 提交实时代码?
【发布时间】:2016-06-07 23:08:12
【问题描述】:

我们的 repo 文件夹/树包含以下文件夹/文件:

  • db/ -> 这是我们存储 db.sql 的地方
  • src/ -> 这是我们存储 Drupal 站点文件的地方
  • settings_.cmd -> 包含数据库用户名和密码等的文件
  • setup.cmd -> 将数据库部署到本地主机的文件。

好的,所以当我将 drupal 站点部署到我们的 cPanel 帐户时,我会这样做:

cd /home/accountname/public_html/

  • git 初始化
  • git remote add -f name URL
  • git config core.sparsecheckout true
  • echo db/ >> .git/info/sparse-checkout
  • echo src/ >>.git/info/sparse-checkout
  • git 拉名头

一旦我运行了这些命令,我​​最终会在 /home/accountname/public_html/ 中获得以下内容

  • .git
  • 分贝/
  • src/

然后:

  • cd src/
  • mv * ../
  • rm -r src/

并运行 mysql -h 127.0.0.1 -D DBname -uDBuser -p'DBpass'


现在完成了,在我对网站进行了一些更改后,我的网站运行 100% 我想将这些更改提交到 repo,这就是我所做的:

  • cd public_html/
  • git add --all
  • git commit -m "sometext"
  • git 推送

当我在本地提取 repo 时,它会导致 repo “中断”,我的 repo 树现在只显示 src/ 内的内容,因此它删除了原来看起来像这样的树:

  • 分贝/
  • src/
  • settings_.cmd
  • setup.cmd

现在看起来像这样:

我想要它做的只是:

当我将实时代码提交到 repo 时,我只希望它更新文件夹 src/ 和 db/。这样当我在本地拉取我的 repo 时,它将更新 src/ 和 db/ 文件夹,而不是其他任何东西。

【问题讨论】:

  • 参考。为你Pro Git Book v2 - Moving Files,也许你可以使用子模块。
  • 你可以将 db 文件夹移动到原始存储库的 src 文件夹中吗?

标签: git github commit git-commit tortoisegit


【解决方案1】:

在开发计算机中(原始存储库)

拆分Dev/src & Dev/db 文件夹,使它们成为一个独立的git仓库。然后该原始存储库将它们作为子模块。

  1. cd 到 Dev git 存储库
  2. 使用子树拆分src文件夹的更改/提交 git subtree split -P src -b src_branch
  3. 在某处创建一个名为 src.git 的裸存储库
  4. src_branch 推送到src.git
  5. 使用子树拆分db文件夹的更改/提交 git subtree split -P db -b db_branch
  6. 在某处创建一个名为 db.git 的裸存储库
  7. db_branch 推送到db 裸存储库
  8. 删除src文件夹
  9. src.git 作为子模块添加到src 文件夹
  10. 删除db文件夹
  11. db.git 作为子模块添加到db 文件夹

结果:

在 Live Code 计算机中(public_html)

  1. src.git 克隆到accountname 文件夹并为其命名public_html
  2. db.git 克隆到accountname/public_html 文件夹

结果:

从实时代码同步

  1. 提交accountname/public_html/db并推送
  2. 提交accountname/public_html并推送

与开发同步

  1. 拉入Dev/db文件夹/子模块
  2. 拉入Dev/src文件夹/子模块
  3. 提交Dev repo中子模块的更改

【讨论】:

    猜你喜欢
    • 2015-01-15
    • 2021-11-12
    • 2014-10-30
    • 1970-01-01
    • 2018-07-02
    • 2019-05-26
    • 1970-01-01
    • 1970-01-01
    • 2021-08-04
    相关资源
    最近更新 更多