当上游是100%CVS时,最佳做法是什么? [英] What's the best practice of going GIT when upstream is 100% CVS?

查看:83
本文介绍了当上游是100%CVS时,最佳做法是什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我很好奇最好的做法是保持你在Git中偶尔贡献一个OSS项目(例如,在github / bitbucket / gitlab上),而上游是CVS。

我的看法是,它是非常方便,直接将 CVS / {Entries,Repository,Root} 直接提交到 git ,然后随时从任何一个框中,你都可以简单地检出你的git repo(w / git ),然后用真正的上游更新 cvs up ,这正是我用我的OpenBSD ports-readmes fork 做的事情作为 mdocml



然而,我注意到大多数人对我的GitHub上的这些git仓库中的这些CVS文件感到非常惊讶和困惑,据说认为这是我的一些疏忽。另外,例如, reyk的httpd 也没有这样的设置,虽然他显然通常从上游批量更新它,而不保留上游的日志。



我在这里错过了什么吗?我觉得你的git仓库里有 CVS / {Entries,Repository,Root} 是一个好主意,但我从来没有见过其他人这样做。为什么?

解决方案


我觉得在你的git中拥有CVS / {Entries,Repository,Root}知识库是一个好主意,但我从来没有见过其他人这样做。为什么?

这似乎是一个好主意,但它也会将元数据(CVS参考)与数据(回购文件)混合起来。



这就是为什么 git-svn 会记住git配置中相同类型的引用(本地配置文件,不是回购协议的一部分)。
任何人都希望再次向上游SVN回购贡献一个 git svn clone



中间解决方案是在 README 中解释用户需要在回购时创建这些CVS参考文件克隆,如果他/她希望回馈(CVS)上游。

I'm curious what's the best practice of keeping your occasional contributions to an OSS project in git (e.g., on github/bitbucket/gitlab), whilst the upstream is exclusively CVS.

My take is that it's very convenient to simply commit CVS/{Entries,Repository,Root} directly into git, and then at any time and from any box, you can simply checkout your git repo (w/ git), and then update from the real upstream with cvs up, which is exactly what I do with my OpenBSD ports-readmes fork, as well as mdocml.

However, I've noticed that most people are quite surprised and puzzled to see these CVS files within these git repositories on my GitHub, supposedly thinking that it's some sort of an oversight on my part. Additionally, reyk's httpd, for example, doesn't have such a setup, either, even though he apparently usually updates it from upstream in bulk, without preserving the log from the upstream, either.

Am I missing something here? I feel like having CVS/{Entries,Repository,Root} within your git repository is a great idea, yet I've never seen anyone else doing it. Why?

解决方案

I feel like having CVS/{Entries,Repository,Root} within your git repository is a great idea, yet I've never seen anyone else doing it. Why?

It seems a good idea, but it also mixup metadata (CVS reference) with data (your files of the repo).

That is why git-svn, for instance, do memorize that same kind of reference in git configuration (local config file, not part of the repo).
Anyone wanting to contribute to the upstream SVN repo need to to a git svn clone again.

An intermediate solution would be to explain in the README that a user need to create those CVS reference files once the repo is cloned, should he/she wishes to contribute back to (CVS) upstream.

这篇关于当上游是100%CVS时,最佳做法是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆