Board index FlightGear Support 3rd Party Repositories

Cloning fgdata with GIT submodules

Re: Cloning fgdata with GIT submodules

Postby Jabberwocky » Tue Mar 10, 2015 6:30 pm

Hi!

Okay, first of all, I tinker with planes ... I don't need somebody to be a gate keeper deciding on some gut-feeling whether my planes go in a "central repository" because the repository needs the planes more urgent than I need the repository. So I send my planes ONLY to repositories that support open collaboration on planes and that don't censor in any form. But because I'm so Git-challenged (thanks to IAHM-COL, I got my own stuff to work on Git just a little ago), jnow how do I get my latest version from my Git to FGMemebers? Israel ... a little hep for the challenged?

Jabberwocky
Jabberwocky
Retired
 
Posts: 1319
Joined: Sat Mar 22, 2014 7:36 pm
Callsign: JWOCKY
Version: 3.0.0
OS: Ubuntu 14.04

Re: Cloning fgdata with GIT submodules

Postby IAHM-COL » Tue Mar 10, 2015 7:01 pm

Hi JWOCKY :D

Thanks for all the good work on the planes. And on the Condor-Jsb (a derivative of the fw200 from Helijah, now on JSBSIM!).

I am glad to see you have made very good progress on making your changes publicly available in your own repository (where you pushed your changes/suggestions directly):
https://github.com/JWocky/Condor-Jsb
Image

and as you know, your repository has a FGMEMBERs fork, which is the one fetched by FGDATA with Submodules.
Currently, FGMEMBERS repository was lastly updated to the commit f08a...e, made by IAHM-COL, that added texturizing to the Gondola.
FGMEMBERs repository, can be seen is at the moment 6 commits behind your fork! And that is what you want to remedy.
https://github.com/FGMEMBERS/Condor-Jsb
Image

HOW DO YOU REQUEST AN UPDATE OF THIS AIRCRAFT NOW?!

1. Lets go to your repo at https://github.com/JWocky/Condor-Jsb
2. Click the compare, review, create a pull request button. (the green one)
Image

I've got that github is trying to compare accross branches in your repo. But we want to actually compare two forks. Then I clicked compare accross forks.
Image

3. Now I've got the option of select (beyond the default), which fork/branch (base) I want to compare to which other fork/branch (head)

Image

Then

Image

4. The result is very informative. As it should be, because it will tell you exactly what is the operation you are trying to accomplish here:
This is how is visually summarized:

Image

What all that means?
1) You are comparing what's new/different between head (Jwocky fork/ master branch) to base (FGMEMBERs fork/ also master branch).
2) There are a total of 6 additional commits, affecting a total of 24 files, all made by 1 single contributor -- author
3) Then it list such commits with date and author. All made on March 9th by JWocky. The commit message is shown and the commit SHA1 also (the number at the end of line, example, c1fd30a....)

5) Here, you judge and conclude. YES! that is exactly what I want to update to the base (also known as the FGMEMBERs fork!)

And the way to say yes, is simply, clickin' on the green button again.
Image

6) Then when you do. It will REQUIRE you to add a message-name for the petition, and more importantly, add an optional paragraph where you can freely explicit anything the FGMEMBERs team may want to know of this particular request.

Once that is done, hitting the green button again, will do the petition.
And That's it!

Image

Anyone can create a github account, fork a FGMEMBERs aircraft, make changes and use this method to request an aircraft update.

I hope it helps, but still do not doubt to ask me again if something is not particularly clear.

Other than that, you can celebrate with a pattern in the Condor :D
Image
If we gave everybody in the World free software today, but we failed to teach them about the four freedoms, five years from now, would they still have it? Probably not, because if they don’t recognise their freedoms, they’ll let their freedoms fall
User avatar
IAHM-COL
Retired
 
Posts: 4064
Joined: Wed Aug 08, 2012 5:40 pm
Location: Homey, NV (KXTA) - U.S.A
Callsign: HK-424D or ICAO4243
Version: 3.7-git
OS: Linux

Re: Cloning fgdata with GIT submodules

Postby IAHM-COL » Tue Mar 10, 2015 10:30 pm

FGUK GPL Aircraft NOW available on FGDATA NEXT with Submodules
:mrgreen:
Image

@ ALL

The FGUK Hangar (http://fguk.eu/index.php/hangar) is home to the most impressive collection of Flightgear Aircraft, specially a very long list of Fighters developed and presented to Fligthgear on their webpage.

Many of their aircraft had been licensed under the GPL terms, but they were never available on the FGDATA repository, and are not currently available for the FGADDON SVN repository either. Therefore, individual download and install of these aircraft from the Hangar page was the only alternative.

Today the FGDATA NEXT with submodule has a major update of the Aircrafts as submodules units that add a collection on 36 GPL-licensed FGUK-made Aircraft.

Code: Select all
Aircraft/a400m
Aircraft/AH-64_Apache
Aircraft/AvroVulcanB2
Aircraft/BAC-TSR2-GR3
Aircraft/BAE-Hawk #A collection of these pictured above
Aircraft/Bell-206
Aircraft/bell407
Aircraft/bell430
Aircraft/C-17
Aircraft/ec145
Aircraft/EF2000
Aircraft/F-15C
Aircraft/F-15E
Aircraft/F-16C
Aircraft/F-18D
Aircraft/F-22
Aircraft/F-23C
Aircraft/F-29
Aircraft/fgukpayloads
Aircraft/FGUK-weapons
Aircraft/Gloster-Javelin
Aircraft/Harrier-GR3
Aircraft/Harrier_GR9
Aircraft/hughes500
Aircraft/L-159
Aircraft/MustangIII_VooDoo
Aircraft/SaabJ35Draken
Aircraft/SpitfireVb_VooDoo
Aircraft/SU-27
Aircraft/SU-47
Aircraft/T-38C
Aircraft/T-6
Aircraft/Tornado  #This checks out with modifications by Jwocky
Aircraft/V-1_FlyingBomb
Aircraft/vampire  #This checks out with modifications by Lesbof
Aircraft/VooDoo-Libelle


INSTRUCTIONS


To obtain these new aircraft, all instructions remain the same:

1. Update the FGDATA NEXT
Code: Select all
git pull


2. Initialize either All or some of the modules (as desired)
Code: Select all
git submodule init

or

git submodule init Aircraft/vampire  #as an example


3. Update your submodules to install the new changes
Code: Select all
git submodule update

This step will fastly scan on all initialized submodules, and only fetch those with changes. It is really fast, even if you have a FULL FGDATA with all submodules installed (that is the most comprehensive battery of Aircrafts together that flightgear has seen so far!)

Enjoy!
Test!
Let me know if you face trouble!

Best,
IHCOL
If we gave everybody in the World free software today, but we failed to teach them about the four freedoms, five years from now, would they still have it? Probably not, because if they don’t recognise their freedoms, they’ll let their freedoms fall
User avatar
IAHM-COL
Retired
 
Posts: 4064
Joined: Wed Aug 08, 2012 5:40 pm
Location: Homey, NV (KXTA) - U.S.A
Callsign: HK-424D or ICAO4243
Version: 3.7-git
OS: Linux

Re: Cloning fgdata with GIT submodules

Postby onox » Tue Mar 10, 2015 11:59 pm

If you force aircraft devs to use pull request to update your fork (downstream) with the changes in their own repository (upstream), then you're going to get lots of ugly merge commits. These are unnecessary since (if your FGMEMBER fork is clean) can just be pulled by fast-forwarding. In other words, you, IAHM-COL, needs to git pull from upstream (you can do "git pull upstream master" if you have added a remote called "upstream"). Don't shift the responsibility to the aircraft devs :P

IAHM-COL wrote in Tue Mar 10, 2015 7:01 pm:Anyone can create a github account, fork a FGMEMBERs aircraft, make changes and use this method to request an aircraft update.


That's not how people should fork. The FGMEMBER's forks are just mirrors of the branches they forked off from, they shouldn't be used for development.

If JWocky has a repository called JWocky/Condor-Jsb and JohnDoe wants to make a contribution, then:

  1. JohnDoe goes to JWocky/Condor-Jsb and clicks the Fork button to create a fork called JohnDoe/Condor-Jsb
  2. JohnDoe commits to JohnDoe/Condor-Jsb and, when ready, clicks the Pull Request button to create a pull request

See https://help.github.com/articles/creati ... l-request/

JWocky can then merge the contribution of JohnDoe:

  1. JWocky then goes to JWocky/Condor-Jsb and will see the number "1" to the right of "Pull Requests"
  2. JWocky goes to that page, clicks on the pull request from JohnDoe, inspects the changes, and then decides whether to merge it or not

See https://help.github.com/articles/mergin ... l-request/
onox
Retired
 
Posts: 431
Joined: Fri Jun 20, 2014 2:45 pm

Re: Cloning fgdata with GIT submodules

Postby Hooray » Wed Mar 11, 2015 1:27 am

folks, it would be much better to help improve on the wiki docs covering git basics instead of using the forum to cover redundant topics.
And please make sure to actually understand how git works and what the best practices are, vs. what is likely to cause conflicts/issues down the line.
Otherwise, all the people opposing this particular effort will almost certainly be proven correct sooner than later.
Please don't send support requests by PM, instead post your questions on the forum so that all users can contribute and benefit
Thanks & all the best,
Hooray
Help write next month's newsletter !
pui2canvas | MapStructure | Canvas Development | Programming resources
Hooray
 
Posts: 11437
Joined: Tue Mar 25, 2008 8:40 am

Re: Cloning fgdata with GIT submodules

Postby IAHM-COL » Wed Mar 11, 2015 3:27 am

yes. I have among my pile of TODO make a few wiki pages with all the FGMEMBERs info
Thanks for the hint too :P
If we gave everybody in the World free software today, but we failed to teach them about the four freedoms, five years from now, would they still have it? Probably not, because if they don’t recognise their freedoms, they’ll let their freedoms fall
User avatar
IAHM-COL
Retired
 
Posts: 4064
Joined: Wed Aug 08, 2012 5:40 pm
Location: Homey, NV (KXTA) - U.S.A
Callsign: HK-424D or ICAO4243
Version: 3.7-git
OS: Linux

Re: Cloning fgdata with GIT submodules

Postby IAHM-COL » Wed Mar 11, 2015 5:56 am

@ONOX

I think the pull request was performed as expected, and the merge-commit is not a problem endangering confusion.

Allow me to quote you some one else on the same topic

http://stackoverflow.com/questions/8509396/git-pull-results-in-extraneous-merge-branch-messages-in-commit-log wrote:The commit you are seeing is perfectly fine. A pull effectively runs git fetch and then git merge so a merge is usually happening when you run git pull.

The alternative to use rebasing instead of merging is possible, but usually you should avoid it. Rebasing allows you to keep a linear history, but also removes any information about the branching that originally happened. It will also cause the history of the current branch being rewritten, recreating all commits that are not contained in the target branch (in your case, the remote). As the recreated commits are different commits, this can cause a lot of confusion when developing together with others, especially when people already checked out parts of those commits before they get rewritten (for example with feature branches). So as a rule of thumb, you should never rewrite any commit that was already pushed.

The commits you see are there to combine two (or more) branches. It is perfectly fine to have a commit that does nothing else then merging multiple branches. In fact it makes it very clear when you have a merge commit that combines branches when looking at the history. In comparison to rebasing, merging also allows you to effectively see the original history as it was developed, including the actual branches that coexisted.

So, long story short: Yes, having merge commits is perfectly fine and you should not worry about them.
If we gave everybody in the World free software today, but we failed to teach them about the four freedoms, five years from now, would they still have it? Probably not, because if they don’t recognise their freedoms, they’ll let their freedoms fall
User avatar
IAHM-COL
Retired
 
Posts: 4064
Joined: Wed Aug 08, 2012 5:40 pm
Location: Homey, NV (KXTA) - U.S.A
Callsign: HK-424D or ICAO4243
Version: 3.7-git
OS: Linux

Re: Cloning fgdata with GIT submodules

Postby IAHM-COL » Fri Mar 13, 2015 4:17 pm

FGDATA NEXT with Submodules updated

* All changes on Fg-Addon until revision 401 included
* New changes in additional aircraft including: ONOX's Osprey V-22, and USA-Tour Condor-JSb and B29
* FGDATA next merged and uptodate

Code: Select all
git pull
git submodule update


Have fun flyin'
IHCOL
If we gave everybody in the World free software today, but we failed to teach them about the four freedoms, five years from now, would they still have it? Probably not, because if they don’t recognise their freedoms, they’ll let their freedoms fall
User avatar
IAHM-COL
Retired
 
Posts: 4064
Joined: Wed Aug 08, 2012 5:40 pm
Location: Homey, NV (KXTA) - U.S.A
Callsign: HK-424D or ICAO4243
Version: 3.7-git
OS: Linux

Re: Cloning fgdata with GIT submodules

Postby IAHM-COL » Sun Mar 15, 2015 9:33 pm

Helijah's Hangar Extra-Aircrafts now Available through FGDATA next with Submodules
Image
@ALL

One of the most talented and prolific aircraft developers is Helijah
His fully GPLed Hangar can be found here: http://helijah.free.fr/flightgear/hangar.htm

Several of his jewels, are actually very well know fligthgear aircraft, but some of these unbelivable pieces of art are not part of the subversion repository FGAddon

Now, both FGMEMBERs and FGDATA next with submodules is proud to present the complete Helijah's Collection!

New Submodules now include
Code: Select all
Aircraft/Airspeed-Horsa
Aircraft/Akagi
Aircraft/Alouette-3
Aircraft/Bell-XFL-1
Aircraft/Bleriot-5190
Aircraft/Boomerang
Aircraft/Breguet-Atlantic
Aircraft/Caproni-Ca3
Aircraft/DO-28
Aircraft/Douglas-XB19
Aircraft/Espadon
Aircraft/HP-42
Aircraft/Heinkel-He-111Z
Aircraft/I-400
Aircraft/Late-523
Aircraft/M-4-Bison-A
Aircraft/MD-312-Flamant
Aircraft/Ogelcopter
Aircraft/RainbowRacer71
Aircraft/SkyCar
Aircraft/Wheel-Chair


Enjoy,
IHCOL
If we gave everybody in the World free software today, but we failed to teach them about the four freedoms, five years from now, would they still have it? Probably not, because if they don’t recognise their freedoms, they’ll let their freedoms fall
User avatar
IAHM-COL
Retired
 
Posts: 4064
Joined: Wed Aug 08, 2012 5:40 pm
Location: Homey, NV (KXTA) - U.S.A
Callsign: HK-424D or ICAO4243
Version: 3.7-git
OS: Linux

Re: Cloning fgdata with GIT submodules

Postby hamzaalloush » Sun Mar 15, 2015 10:48 pm

i like to thank IAHM-COL for you amazing work, providing a portal for all and any changes to aircraft so it can develop freely, and remain true "open source", even as an FG noob i can really appreciate Hellijah's work, so who's to say what goes in or out of FlightGear as long as it's open source and we can share and merge and shape FG just as we like. the definition of free software.

i'm not sure how this work, in relation to svn vs git, but one thing i was lead to believe by reading some messegas on the dev list, is that GIT will provide freedom in cloning an aircraft repo(submodule), work on it, and then merge it back to the main(next, release, whatever) branch with fixes, correct me if i'm wrong please.

i'm really happy to see all these talented developers/artists work in a large(albiet unofficial repo), rather than have them hidden in hanger somewhere from public.

one last thing, i hope i didn't step on anybody's toe's. since i'm a "new guy" :wink:
hamzaalloush
 
Posts: 632
Joined: Sat Oct 26, 2013 9:31 am
OS: Windows 10

Re: Cloning fgdata with GIT submodules

Postby IAHM-COL » Mon Mar 16, 2015 4:26 pm

flyingsolo wrote in Sun Mar 15, 2015 10:48 pm:i like to thank IAHM-COL for you amazing work, providing a portal for all and any changes to aircraft so it can develop freely, and remain true "open source", even as an FG noob i can really appreciate Hellijah's work, so who's to say what goes in or out of FlightGear as long as it's open source and we can share and merge and shape FG just as we like. the definition of free software.
:



Hi flyingsolo

Thanks for your kind words.

I am amazed that a "new guy" understands the principles behind FGMEMBERs better than seasoned developers. As you had seen from very flammable responses in the devel-list.

About Helijah's work. I am speechless. He is just such an artist. And not only his models are so beautiful, but also, his contributions almos account for half of all aircrafts available to flightgear. There is not a second contributor that gets even close to him in terms of number of models made available!

Respect to the Fligthgear SVN repo, No-one has passed judgement onto Helijah's work to decide what goes in or out. It is helijah himself, who has decided which models he considers immature work, and that he will preffer to have a time to improve before making them available via the SVN repo.

On the other hand, given that FGMEMBERs is a development sandbox. Work present, distributed in FGMEMBERs need not to be complete, refined or anything like that for that matter. These additional 23 models by Helijah are offered on his site under GPL, and as such they meet the only 1 condition necessary for FGMEMBERs inclusion. Maturity is not such condition, but GPL.

i'm not sure how this work, in relation to svn vs git, but one thing i was lead to believe by reading some messegas on the dev list, is that GIT will provide freedom in cloning an aircraft repo(submodule), work on it, and then merge it back to the main(next, release, whatever) branch with fixes, correct me if i'm wrong please.


You are not exactly rigth, unfortunately.
Althought that will be a really cool plan of action, it is important to understand that contributions made on FGMEMBERS are not currently being made available, or transferred to the SVN repo in any manner, automatic or manned.

On the contrary, every contribution made on the SVN repo are being currently transfer (rebased) to the FGMEMBERs are, and I am creating a cronjob that can do the work being partly monitored, in an automatic manner.

What we have achieved with the developers (not yet fully announced) is that we will be able to release a catalog of our aircraft, that can be integrated rapidly and simply with flightgear (the next GUI that will integrate aircraft discovery and fetching with the launcher). Therefore, this measurement effectively de-centralizes aircraft development, and strips away the "official status" of any branch of aircraft development.

Therefore, FGMEMBERs is just another platform to develop fligthgear aircrafts, not secondary or subdue to any other potential alternative. FGADDON in SVN among them. Everyone can obtain aircrafts throught github, or thru the FGDATA next with submodules, but on the near future with the catalog as well.

It is all up to the end user to decide which catalog-catalogs he/she preffers. Given different catalogs may provide either more complete libraries, or more developed planes.
FGMEMBERs effort in completion of its catalog. But not on the state of such aircraft. We allow undeveloped [read partly developed] planes. (since we are a developing area), and we allow distributions of aircraft in the "bleeding edge", that is, unreleased versions that may still need to be polished. Doing so, allow us to incorporate end users as "testers".
But also allows us to provide immediate update to any aircraft.


i'm really happy to see all these talented developers/artists work in a large(albiet unofficial repo), rather than have them hidden in hanger somewhere from public.

one last thing, i hope i didn't step on anybody's toe's. since i'm a "new guy" :wink


I am really happy too. And I am looking forward to see many developers. New and seasoned, join, in shared development.
Also we are bringing other hangars GPL aircraft under one umbrella, and it will be great to see the other hangars participants to join,

And do not worry, you surely stepped on the toes of some one with your statements. Not something I had not done before :D

Sincerely yours,
IHCOL
If we gave everybody in the World free software today, but we failed to teach them about the four freedoms, five years from now, would they still have it? Probably not, because if they don’t recognise their freedoms, they’ll let their freedoms fall
User avatar
IAHM-COL
Retired
 
Posts: 4064
Joined: Wed Aug 08, 2012 5:40 pm
Location: Homey, NV (KXTA) - U.S.A
Callsign: HK-424D or ICAO4243
Version: 3.7-git
OS: Linux

Re: Cloning fgdata with GIT submodules

Postby IAHM-COL » Mon Mar 16, 2015 5:50 pm

New Aircraft added as submodule! :D

Hi all

We have the Fictional but very very sleek Piper archer ready for initialization and testing

Code: Select all
Aircraft/piper-archer


Image

Enjoy!

IHCOL
Last edited by IAHM-COL on Wed Mar 18, 2015 8:08 pm, edited 1 time in total.
If we gave everybody in the World free software today, but we failed to teach them about the four freedoms, five years from now, would they still have it? Probably not, because if they don’t recognise their freedoms, they’ll let their freedoms fall
User avatar
IAHM-COL
Retired
 
Posts: 4064
Joined: Wed Aug 08, 2012 5:40 pm
Location: Homey, NV (KXTA) - U.S.A
Callsign: HK-424D or ICAO4243
Version: 3.7-git
OS: Linux

Re: Cloning fgdata with GIT submodules

Postby IAHM-COL » Wed Mar 18, 2015 12:16 am

FGDATA Next with Submodules


@ALL

All modification in the FGADDON (subversion) repository to Revision 437 are now transferred to FGMEMBERs area! :D

make a [git pull; git submodule update] for the changes to become effective immediately :D

Also,
A new Submodule is added, for those interested
Is the BN-2 Islander

Code: Select all
Aircraft/BN-2


Happy (and Free!) flying
IHCOL
If we gave everybody in the World free software today, but we failed to teach them about the four freedoms, five years from now, would they still have it? Probably not, because if they don’t recognise their freedoms, they’ll let their freedoms fall
User avatar
IAHM-COL
Retired
 
Posts: 4064
Joined: Wed Aug 08, 2012 5:40 pm
Location: Homey, NV (KXTA) - U.S.A
Callsign: HK-424D or ICAO4243
Version: 3.7-git
OS: Linux

Re: Cloning fgdata with GIT submodules

Postby wlbragg » Wed Mar 18, 2015 3:30 am

Outstanding stewardship :D

Thank you for all your hard work!
Kansas(2-27-15)/Ohio/Midwest scenery development.
KEQA (2-27-15), 3AU, KRCP Airport Layout
Intel i5 3570K AMDRX480
User avatar
wlbragg
 
Posts: 5082
Joined: Sat Aug 25, 2012 11:31 pm
Location: Kansas (Tornado Alley), USA
Callsign: WC2020
Version: next
OS: Win10/Linux/AMDRX480

Re: Cloning fgdata with GIT submodules

Postby legoboyvdlp » Wed Mar 18, 2015 8:24 am

Does one delete the submodules, and re-copy and paste them, or possibly point fg to the Git folder for aircraft?
User avatar
legoboyvdlp
 
Posts: 7273
Joined: Sat Jul 26, 2014 1:28 am
Callsign: YV-LEGO
Version: next
OS: Windows 10 HP

PreviousNext

Return to 3rd Party Repositories

Who is online

Users browsing this forum: No registered users and 1 guest