git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Questions about GIT
@ 2015-12-14 10:48 Jack McLear
  2015-12-14 16:22 ` Stefan Beller
  0 siblings, 1 reply; 2+ messages in thread
From: Jack McLear @ 2015-12-14 10:48 UTC (permalink / raw)
  To: git

Hi

I’ve recently been made aware of GIT and had a few questions.
I’m currently working on creating a middleware between FORAN (a CAD system) and Teamcenter.

Do you know if GIT would work between the two?

We’re currently using a Centralised version control system.

So to check my understanding, using GIT to create a distributed version control would have the following benefits
The CAD designer who has design a pump assembly for example could create an additional branch and “plays around” with the pump to make improvements without editing the main pump branch?
Could more than one user create independent branches?
If both users wanted to merge their independent branch with the main branch, what would happen? Would one take priority?

Is that the main benefit in terms of a CAD system, the branching ability?

Thanks

Jack


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Questions about GIT
  2015-12-14 10:48 Questions about GIT Jack McLear
@ 2015-12-14 16:22 ` Stefan Beller
  0 siblings, 0 replies; 2+ messages in thread
From: Stefan Beller @ 2015-12-14 16:22 UTC (permalink / raw)
  To: Jack McLear; +Cc: git

On Mon, Dec 14, 2015 at 2:48 AM, Jack McLear <mclear7@hotmail.co.uk> wrote:
> Hi
>
> I’ve recently been made aware of GIT and had a few questions.
> I’m currently working on creating a middleware between FORAN (a CAD system) and Teamcenter.
>
> Do you know if GIT would work between the two?

Git is designed to track any kind of contents, so yes, it will work
with FORAN and Teamcenter.

However! Git is optimized for files which are text. Tracking binary
files is not as pleasant
as text files. (E.g.: There is no merge driver available, as any
binary file has a different format.
Also file sizes may be a concern)

>
> We’re currently using a Centralised version control system.

You may or may not want to change the workflow. Git as a distributed version
control system allows for more freedom w.r.t. workflows, but a
centralized workflow
is supported just as well. See [1] for examples (Just a quick search,
there are many more
articles out there covering workflows)

[1] http://blog.endpoint.com/2014/05/git-workflows-that-work.html

>
> So to check my understanding, using GIT to create a distributed version control would have the following benefits
> The CAD designer who has design a pump assembly for example could create an additional branch and “plays around” with the pump to make improvements without editing the main pump branch?

Branches are cheap to create. Specially in Git. But other version
control systems also allow for
creation of branches. The big issue is the merging back to mainline.
And in case you have binary
files, which have been edited in both branches to merge, you're out of
luck unless you
write a merge driver yourself.

> Could more than one user create independent branches?

Branches are local. So everybody who has a copy of the repository can create
branches. Depending on the configuration of the server, people may or may not
push new branches (or are only allowed to update existing ones).

> If both users wanted to merge their independent branch with the main branch, what would happen? Would one take priority?

In case of text files, they just merge if they were edited at
different positions of the file (plus some margin for error). If they
were edited at the same position, you need to resolve the merge
conflict manually.
Binary files are not merged automatically as Git has no idea of binary
file formats. You need to provide your own merge driver[2].

[2] https://www.kernel.org/pub/software/scm/git/docs/gitattributes.html
see "Defining a custom merge driver"

>
> Is that the main benefit in terms of a CAD system, the branching ability?
>
> Thanks
>
> Jack
>

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-12-14 16:22 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-14 10:48 Questions about GIT Jack McLear
2015-12-14 16:22 ` Stefan Beller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).