Hi All
We are moving over to source control, for one reason or another we will be using Git hosted on Github. Our chosen GUI at the moment is SourceTree.
We are planning on excluding binary files i.e. SCX,PJX etc.
Looking now to a tool which will convert our binary files to text so that we can benefit from the power of the system I have discovered FOX2BIN on VFPX.
This seems to work well although I have only tested on our test project.
Leading on to my question ...
What's the best way to manage this at the Working Copy level?
Is it just a case of remembering to perform a conversion back from the text versions to binary versions before starting making changes to the project?
Should I be including all the binary files as well and only using the text versions for information purposes?
Could I maybe included the PJX and a project hook to automatically do the conversion either way upon file open and close?
Basically I don't want to bloat the repository with lots of binary files, but want a fellow developer the other end to be able to clone it and load fox and start with modi proj ? without having to remember to convert this, that or the other.
Any thoughts welcomed.
Thanks
Chris.
______________________________________________________________________
This email has been scanned by the Symantec Email Security.cloud service.
For more information please visit http://www.symanteccloud.com
______________________________________________________________________
--- StripMime Report -- processed MIME parts ---
multipart/alternative
text/plain (text body -- kept)
text/html
---
_______________________________________________
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/50B267080B15C148A824DE4785A7451E6F9756ED@DC4HS14EXMBX06.os.local
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Hi, Chris
Back when I was really working, I did the pretty much the same thing, using Mercurial with the Tortoise interface, and was very impressed with the way it worked. Git seems to be gaining share over Mercurial, but they both work well.
I'm kind of curious about the benefit you hope to gain by excluding binary files. In my case, I decided to leave things as they were and include all the files, binary or not, until I saw a problem. Yes, I couldn't see the inside of the binaries to verify the exact change, but I found I didn't need to. The source control tells you that it changed, which is the important part, and in the case of an SCX, the SCT, which is NOT binary, will pretty much tell you which changes you made at that point.
I found the reported change info completely adequate, and it seems to me that converting binaries to text and including them instead, in addition to being a cumbersome extra step, is creating a new place to make mistakes. The great thing about distributed source control is that it makes it EASY to record the version changes, adding extra steps gives an incentive to skip the commitment.
Dan Covill
> From: chrisd@actongate.co.uk
> To: profoxtech@leafe.com
> Subject: Source Control / VFP
> Date: Sat, 28 Jun 2014 08:55:44 +0000
>
> Hi All
>
> We are moving over to source control, for one reason or another we will be using Git hosted on Github. Our chosen GUI at the moment is SourceTree.
>
> We are planning on excluding binary files i.e. SCX,PJX etc.
>
> Looking now to a tool which will convert our binary files to text so that we can benefit from the power of the system I have discovered FOX2BIN on VFPX.
>
> This seems to work well although I have only tested on our test project.
>
> Leading on to my question ...
>
> What's the best way to manage this at the Working Copy level?
>
> Is it just a case of remembering to perform a conversion back from the text versions to binary versions before starting making changes to the project?
> Should I be including all the binary files as well and only using the text versions for information purposes?
> Could I maybe included the PJX and a project hook to automatically do the conversion either way upon file open and close?
>
> Basically I don't want to bloat the repository with lots of binary files, but want a fellow developer the other end to be able to clone it and load fox and start with modi proj ? without having to remember to convert this, that or the other.
>
> Any thoughts welcomed.
--- StripMime Report -- processed MIME parts ---
multipart/alternative
text/plain (text body -- kept)
text/html
---
_______________________________________________
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/BAY169-W2097D34DFA63E16EF215BD8A1A0@phx.gbl
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Chris Davis wrote:
> <snip>
> What's the best way to manage this at the Working Copy level?
>
>
Let's take forms. I use the scctextx.prg in the home() folder to
generate the text version of forms and classes. I have the scx/sct/txt
in a forms folder and before I check in any changes I have a program
called genform, which checks the forms folder to see if there is a txt
file older than the scx file. If so generate a new one. I never do the
conversion back from txt to scx/t as I back up all three files at the
same time. Being able to do diffs with the txt file is very useful as
sometimes you forget which bits of a form you changed. Also started
using GIT recently and you can see at a glance what has changed.
That program can do menus/labels/reports to text but don't bother with
them at the moment.
Peter
_______________________________________________
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/53B14713.5080001@whisperingsmith.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Hi Peter:
The way you are using source control is the same used in the past with
SourceSafe. You are loosing too many functionallity and with this use, you
are infrautilizing Git or whetever modern SCM tool.
In FoxPro, "just Diffs" are the past and SourceSafe have done much damage
in the conception of how to use a SCM properly.
The present is something different and now you can not only "Diff", but
"merge" code, as other languages does from too many years now.
With FoxPro 9 now you can work in a team with concurrent modifications even
on same components, merge their changes and regenerate the binaries.
If you haven't tried it yet, I suggest yo do. You will know a very
different way of working with VFP code, on which nobody blocks the others
and where working on different branches are possible.
You can start here: https://vfpx.codeplex.com/wikipage?title=FoxBin2Prg
Best regards!
Fernando D. Bozzo
2014-06-30 13:16 GMT+02:00 Peter Cushing <pcushing@whisperingsmith.com>:
> Chris Davis wrote:
>
>> <snip>
>> What's the best way to manage this at the Working Copy level?
>>
>>
>>
> Let's take forms. I use the scctextx.prg in the home() folder to generate
> the text version of forms and classes. I have the scx/sct/txt in a forms
> folder and before I check in any changes I have a program called genform,
> which checks the forms folder to see if there is a txt file older than the
> scx file. If so generate a new one. I never do the conversion back from
> txt to scx/t as I back up all three files at the same time. Being able to
> do diffs with the txt file is very useful as sometimes you forget which
> bits of a form you changed. Also started using GIT recently and you can
> see at a glance what has changed.
>
> That program can do menus/labels/reports to text but don't bother with
> them at the moment.
>
> Peter
>
>
[excessive quoting removed by server]
_______________________________________________
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CAGQ_Ju=JSnyAvwOdhsC7obZx70v5nH89CCXFc35n4Rf=-M1vFQ@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
For some reason, my first answer go directly to Chris and not to the list.
I repost to include the list.
2014-06-29 13:46 GMT+02:00 Fernando D. Bozzo <fdbozzo@gmail.com>:
> Hi Chris:
>
> It's better if you keep the boundle of the binaries / text versions
> together, to minimize the regeneration from one to other to a minimum.
>
> The text versions are not for information purposes only, they are the only
> way to merge changes with a SCM tool!
>
> You can work in two ways:
>
> Old way (as in SourceSafe): Each developer checkout a file, and no one can
> modify the same file. When he finish the editing (minutes, hours, days, who
> knows) he/she checkin their changes on main branch and now everybody can
> use it.
>
> New way (Git, Mercurial, Plastic, ...): Each developer create his own
> working branch, make their changes even on same components (forms,
> classlibs) and checkin in the release branch. If second developer have
> modified the same file, then must resolve the merge operation with may be
> manual and may be automatic changes, then checkin. This merge is done using
> the text versions, obviously, and the binaries are regenerated from them.
>
> About FoxBin2Prg, it's used in two ways:
>
> - For developers that never used a SCM tool, they are using it with the
> included vbs scripts from Windows File Explorer, or directly from VFP
> command line, for Diffing or for backup purposes
>
> - For developers that use SCM tools, it's used on some production systems
> with the included vbs scripts and with the SCM internal tools for Diff and
> Merge, and there is a special boundle of VFP tools (scripts) to interface
> with PlasticSCM
>
> At the main VFPx help page you can see how it works and a demo video:
> https://vfpx.codeplex.com/wikipage?title=FoxBin2Prg
>
> At the bottom of this help, there is a link to Internals and Config that
> could be helpful too:
>
> https://vfpx.codeplex.com/wikipage?title=FoxBin2Prg%20Internals%20and%20Configuration
>
>
> Best regards!
>
>
--- StripMime Report -- processed MIME parts ---
multipart/alternative
text/plain (text body -- kept)
text/html
---
_______________________________________________
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CAGQ_Jumgw7RoK5-Y_cfXzeWo2dw+tLGd5QeO1A1LuWRHLa1MeQ@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.