首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何正确使用Git进行可视化FoxPro开发?

如何正确使用Git进行可视化FoxPro开发?
EN

Stack Overflow用户
提问于 2013-08-14 06:52:25
回答 4查看 5K关注 0票数 2

我是个Git初学者。我正在阅读和试用本Git教程。我还读过Git分支模型这里关于这样的问题

但是,我仍然很困惑该如何正确地在下面的情况下使用Git:

  1. 我有一个MyProject01项目。PC01说:我将在个人电脑上做这件事。
  2. PC02说,另一位坐在另一台PC上的开发人员将克隆项目MyProject01 (git克隆、git pull等)。然后就会开始工作了。
  3. 然后,这两者将是同步的(可能是git push到PC01,但我不确定)。例如,我正在file.prg on PC1上编写function 1,而另一个开发人员正在处理PC2上的同一个文件file.prg来编写function 2。这些将被合并以获得最终结果-- file.prgfunction 1function 2完成。

我不使用Git作为完整的版本控制,即版本将由我自己控制,如MyProject01MyProject02等。对于每个目录,Git将使用(git init)。我只想使用Git作为我的Visual桌面应用程序开发的多开发者环境。

根据我的案例,我是否需要创建一个从repo01克隆的裸存储库,如在本教程中所描述的;repo01将是MyProject01

我认为我不适合上面描述的分支模型。请引导我走正确的路。

我在用Windows的Git安装程序

编辑

我的主要目标是使用Git作为源代码管理,类似于:

  • Visual FoxPro中的源代码控制软件
  • CVS、SubVersion和Visual FoxPro
  • 使用Mercurial的VFP版本控制
EN

回答 4

Stack Overflow用户

发布于 2014-06-16 21:51:37

我知道这是一个10个月的问题,但无论如何,这肯定是有用的。

从2014年1月开始,新的scctext(x).prg被称为FoxBin2Prg,它可以将VFP 9二进制文件转换为文本(prg样式的二进制文件),并可以从这些文本中重新生成二进制文件。可以用于区分和合并代码,可以修改生成的文本,并将更改反映在重新生成的二进制文件上。

它托管在VFPx项目上,位于这个url:https://github.com/fdbozzo/foxbin2prg上。

实际上,我将它与PlasticSCM集成在一个10人的团队中,不需要阻塞文件,即使在相同的表单和类上也使用并发开发。

诚挚的问候!

票数 5
EN

Stack Overflow用户

发布于 2013-08-14 07:24:44

我不使用Git作为完整的版本控制,即版本将由我自己控制,如MyProject01、MyProject02等。对于每个目录,Git将使用(git init)。

那么,如果你要扔掉旧历史,那为什么还要费心呢?

如果你不想要历史,那么差异和补丁也会同样为你服务。在git中,除了在一个存储库中有多个分支之外,还可以通过克隆存储库来创建多个工作副本。拥有多个分支允许您保留以前版本的历史记录,同时还允许您返回到以前的版本并进行修改;拥有多个工作副本可以同时运行程序的多个版本,或者存储未签入但版本特定的文件(例如sqlite数据库文件)。没有理由每次创建新版本时都重置修订历史记录。

(可能会推到PC01,但我不确定)

是的,您可以这样做,因为在DVCS中,您可以将任何存储库推送或拉到任何存储库(这就是分布式VCS与集中式VCS的区别,另一个主要区别是,在DVCS中,工作副本也总是具有完整历史的存储库,而不仅仅是特定版本的快照)。尽管如此,建立一个空的存储库仍然是一个让代码共享更容易的好主意。如果PC02需要推送,但PC01不是联机的,那么PC02将不得不等到PC01联机才能推送,服务器上总是在线的裸存储库就不会有这个问题。

票数 2
EN

Stack Overflow用户

发布于 2015-02-16 14:13:04

检查https://github.com/sait/vfpscm

PRG文件只是纯文本,您可以透明地使用GIT或Mercurial。

Visual (scx & sct)和Visual类(vcx & vct)存在问题,因为这些文件是DBF表,与备注文件相关联;当您修改表单时,它会更改整个文件。

GIT可以很好地处理二进制文件,但是您不会看到代码中的差异,以及SCM的用途。

我们创建了这个程序:https://github.com/sait/vfpscm

  1. 将表单和类转换为XML,这样您就可以将它们推入存储库中,并且在修改表单时,只需更改XML文件中的几行。
  2. 将XML文件重新转换为窗体和类,以接收更改。

因此,使用常规GIT的过程更改为:

  1. 编辑文件
  2. 编辑可视化类和窗体
  3. 测试
  4. 一旦您的bug修复或功能准备就绪:
  5. 将类和表单转换为XML (运行VfpScm)
  6. 将文件PRGs和XML添加到Git (git )
  7. 提交文件(git提交-m“消息”)
  8. 将更改推送到存储库(git Push -u源文件母版)

您的团队需要提取这些更改,并将它们添加到本地副本中:

  1. 拉出更改(git拉出原主)
  2. PRG和XML将被Git覆盖。
  3. 重新生成已更改的窗体和类(运行VfpScm)

GIT被配置为使用.gitignore忽略SCX、SCT、VCX和VCT文件,并且存储库只包含PRG和XMLs文件。

自5年以来,我们一直在使用VFPSCM.exe工具,开发具有300个表单和20个类的大型项目,而且我们从来没有松散过任何代码,而且我们必须准备好SCM,只可视化在我们的更改日志中转换的更改和提交历史。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18225039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档