【问题标题】:Can I track and commit without push?我可以在没有推送的情况下跟踪和提交吗?
【发布时间】:2021-10-19 04:00:27
【问题描述】:

我想做的是在不将文件推送到 github 的情况下对文件进行版本控制,这是我能做的吗?

上下文: 例如,我有一个用于 dev (Django) 的本地数据库,它是 SQLite3,它创建了一个文件“db.sqlite3”。我不希望这个文件在 github 上,但是如果我弄乱了迁移,我希望能够将它重置为以前的版本。

也许它们是比 git 更好的方法,我愿意接受建议。

谢谢!

【问题讨论】:

  • 您可以通过dumping the data gitignore SQLite 文件并将数据库“版本”到固定装置中。但我很难想象你为什么要这样做,因为你可以简单地将你的数据库回滚到以前的迁移。

标签: django git sqlite github


【解决方案1】:

据我所知,文件要么被跟踪(包含在提交和推送中)要么被忽略。没有中间立场,我不确定是否需要。

https://git-scm.com/book/en/v2/images/lifecycle.png

如果您可以将文件隔离在其自己的目录中 - 为该目录创建一个单独的 git 存储库并且没有与之关联的远程。

Maintain git repo inside another git repo

此外,您可以为 git 提交创建一个自动计划(例如使用 cron),以便您可以对该目录进行时间点恢复。

如果您无法移动文件,则安排将文件备份到另一个文件夹并将备份提交到不同的本地存储库。

Copy SQLite database to another path

【讨论】:

  • 好建议!但是如果我不能隔离它呢?它基本上是我项目的根源,可能不得不摆弄设置,这也会影响我的同事。
  • 在项目外部创建一个目录并符号链接到文件
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-26
  • 2013-03-16
  • 1970-01-01
  • 2015-11-14
  • 1970-01-01
相关资源
最近更新 更多