Toad 12.9 Team Coding not pushing/commiting to GitHub?

Forgive me if my Git terminology is wrong. We’re using it, but only through Toad and I’m still confused about how some of the things in it work.

Now that the new version of Toad is released, I’m trying again to implement Team Coding. So today using the brand new GA, I dropped all the Team Coding objects and closed and reopened Toad and then created the new ones and again closed and reopened Toad (I forget why I had to now). I then set up my Team Coding for a handful of schemas.

When I check out and compile a package body and then check it in using Team Coding, everything appears to work properly as far as Toad is concerned. Icons and status bar messages get updated appropriately. However, when I look in GitHub at my project, I don’t see the changes I just made. Just in case, I tried closing and reopening Toad - no change.

I created one project in Toad that already had files on GitHub from when I was trying this out using 12.8 and the 12.9 beta. When I created the project, Toad wanted to sync the objects and spent a long time updating the files on my computer in the directory. However, when I look at GitHub, I don’t see any of the new DB objects that have files on my hard drive.

I created another project that is for just a single schema. The main user of this schema then tried to check out and compile a view, but though the Check Out dialog shows up, the icon in the Team Projects window does not show it as checked out. And though it appears like Toad is compiling it, when we try to describe the view, the changes he made are not there. We are guessing, but it appears that the problem might be the new Git project I created using TeamCoding hasn’t made it up to the GitHub repository. Neither he nor I can see it there.

Is there a step I’m missing to get this to work? Or is this perhaps a bug in TeamCoding? I’m fine with a manual step to get the new project and my changes to the objects in the other project up to GitHub, but I don’t have a guess about what I’m supposed to do.

Thank you!

Blessings,

Phyllis


Phyllis Helton

Data Magician
Digital Products & Strategies, Cru | Data Sciences & Analytics
Office :phone: 407-515-4452

phyllis.helton@cru.org

Hey Phyllis,

It sounds like you’re trying to have Toad interact with GitHub in a client-server fashion, just as you would with a centralized version control system like Subversion or Team Foundation Server. Git is a distributed version control system,which works differently than what you might normally expect. In Git, your first step for working with a project is to clone the project from GitHub (or a peer) to your local computer. Your local machine then becomes the “master” repository for all your work. When your work is finished, you have to manually push your changes back to GitHub (or the peer from which you cloned your copy).

Toad’s Git (and soon Mercurial) client is designed to work in that distributed fashion. Toad doesn’t assume it knows from where you cloned your repository. Nor does it assume the destination where you want to push your changes. As a result, Toad will do all its work locally on your hard drive in your local repository. Since there are numerous ways to clone your local repository in Git and Mercurial, it’s up to the individual user to manually perform the clone operation before starting the project, do the work inside of Toad, and then manually push the finished code to other Git users and/or GitHub. That’s why you’re not seeing your changes in GitHub.

Based on the example you wrote above, I would probably recommend setting up that single schema as you did on your machine. Do the Initial revision, which will create all the objects on your local repository. Then, from a DOS prompt, manually push the changes you want up to GitHub. User B would then clone his/her repository from GitHub (which gets the full revision history for the newly created revision you did). From there out, User B can work with the objects as usual. User C would then also clone his/her repository directly from GitHub.

It is possible for User B to clone his/her repository directly from yours, and User C could clone his repository from User B; however, that opens up potential problems with synchronization, as you can see from the following Mercurial example (see Section 5: A decentralized system):

https://www.mercurial-scm.org/wiki/UnderstandingMercurial

While this is a functionality of distributed version control systems like Git and Mercurial, it does open the door for potential synchronization problems. As a result, I’d probably recommend having everyone clone and push to a master repository (like GitHub) for simplicity sake so you know where the master source lives.

-John

Also, here’s a little tutorial I found online that takes a more “conceptual” approach to understanding how Git works differently than other version control systems. Chapter 4: Collaborating talks about ways to clone repositories, fetch updates from other repositories, and push your changes to others.

In case it proves helpful:

https://www.sbf5.com/~cduan/technical/git/

-John

The Apress book Pro Git is freely available for download too, if you wish.

Just go to https://progit.org and help yourself, or read it online, I or buy from Amazon etc.

HTH

Cheers,

Norm. [ TeamT ]

On 20 June 2016 23:36:56 BST, John Bowman bounce-jbowman@toadworld.com wrote:

RE: Toad 12.9 Team Coding not pushing/commiting to GitHub?

Reply by John Bowman
Also, here's a little tutorial I found online that takes a more "conceptual" approach to understanding how Git works differently than other version control systems. Chapter 4: Collaborating talks about ways to clone repositories, fetch updates from other repositories, and push your changes to others.

In case it proves helpful:

https://www.sbf5.com/~cduan/technical/git/

-John

To reply, please reply-all to this email.

Stop receiving emails on this subject.

Or Unsubscribe from Toad for Oracle - Beta Forum notifications altogether.

Toad for Oracle - Beta Discussion Forum

Flag this post as spam/abuse.

--

Sent from my Android device with K-9 Mail. Please excuse my brevity.

This all helps. Thank you both.

The crazy thing about this is that I was using Team Coding for a while in the previous beta but with the 12.8 settings and I thought for certain that the push to Git was happening as part of what Toad does.

So just to confirm, the correct way to use Team Coding with Git is this:

  1. Check out the object and make changes, compile, check in all using Team Coding

  2. Manually go to Git to push changes up to GitHub (or whatever method I choose to employ to do this) :slight_smile:

Blessings,

Phyllis

On Mon, Jun 20, 2016 at 6:40 PM, Norm [TeamT] bounce-NormTeamT@toadworld.com wrote:

RE: Toad 12.9 Team Coding not pushing/commiting to GitHub?

Reply by Norm [TeamT]
The Apress book Pro Git is freely available for download too, if you wish.

Just go to https://progit.org and help yourself, or read it online, I or buy from Amazon etc.

HTH

Cheers,

Norm. [ TeamT ]

To reply, please reply-all to this email.

Stop receiving emails on this subject.

Or Unsubscribe from Toad for Oracle - Beta Forum notifications altogether.

Toad for Oracle - Beta Discussion Forum

Flag this post as spam/abuse.

--
Phyllis Helton

Data Magician
Digital Products & Strategies, Cru | Data Sciences & Analytics
Office :phone: 407-515-4452

phyllis.helton@cru.org

Hey Phyllis,

Yes, those are the correct steps for working with Git in Toad. If you have any other questions, please feel free to let us know! :slight_smile:

-John

Thanks also for this link, Norm!! It’s always good to have some good information for Git – especially since it behaves differently than other version control solutions. :slight_smile:

Thanks!

-John

Thank you for confirming this, John. :slight_smile:

On Tue, Jun 21, 2016 at 10:12 AM, John Bowman bounce-jbowman@toadworld.com wrote:

RE: Toad 12.9 Team Coding not pushing/commiting to GitHub?

Reply by John Bowman
Thanks also for this link, Norm!! It's always good to have some good information for Git -- especially since it behaves differently than other version control solutions. :slight_smile:

Thanks!

-John

To reply, please reply-all to this email.

Stop receiving emails on this subject.

Or Unsubscribe from Toad for Oracle - Beta Forum notifications altogether.

Toad for Oracle - Beta Discussion Forum

Flag this post as spam/abuse.

--
Phyllis Helton

Data Magician
Digital Products & Strategies, Cru | Data Sciences & Analytics
Office :phone: 407-515-4452

phyllis.helton@cru.org