Git is ready

billw2015

King
Joined
Jun 22, 2015
Messages
837
In case it wasn't clear, feel free to start committing, either to master (our git equivalent of trunk) or new branches!

  1. First signup on github at https://github.com/join
  2. PM your github username to @billw2015 or @alberts2 so we can add you to the project with write access.
  3. Then follow the install guide:
    Repo is here:
    https://github.com/caveman2cosmos/Caveman2Cosmos
    Install guide video is here:
    Remember!!: the default install method (DevSetup.bat) will replace your existing Mods\Caveman2Cosmos directory. If you have anything you don't want to lose in that directory you should rename/move/back it up before doing setup (my script does try to save it, but better safe than sorry).

A quick gif based introduction to GitHub Desktop is here: Git for real this time.

If you have any questions, problems with setup etc. then please ask here or discord.

If you have work left to go into SVN then you can submit it there and I can transfer it to git for you.

We need to decide when to switch the trunk in SVN to taking automated builds from git (it will mean no further dev work can be in it, branches in SVN would still be okay to use). At this point players/testers will start getting our changes from git and the change over will be complete.
 
Last edited:
Woo hoo!

This weekend has been super busy - got myself an eye exam and glasses for the first time (in decades) and contacts for the first time ever, yesterday. Today I'll be on a hike. I'll have to get to this soon but I'm watching the progress on it and excited to see it's come together!
 
Remember!!: the default install method (DevSetup.bat) will replace your existing Mods\Caveman2Cosmos directory. If you have anything you don't want to lose in that directory you should rename/move/back it up before doing setup (my script does try to save it, but better safe than sorry).
Even though I directed it to my Mods\Caveman2Cosmos directory , it said it could not find it.

So question: is your directory from CivIV Complete? Or from the Original Civ4\Beyond the Sword Directory. I would bet that you do not have the original BtS Expansion CD. Many of us Old timers here do.

This is how my Directory looks on win 10 64 Pro : C:\Program Files (x86)\Firaxis Games\Sid Meier's Civilization 4\Beyond the Sword\Mods\Caveman2Cosmos
 
Even though I directed it to my Mods\Caveman2Cosmos directory , it said it could not find it.

So question: is your directory from CivIV Complete? Or from the Original Civ4\Beyond the Sword Directory. I would bet that you do not have the original BtS Expansion CD. Many of us Old timers here do.

This is how my Directory looks on win 10 64 Pro : C:\Program Files (x86)\Firaxis Games\Sid Meier's Civilization 4\Beyond the Sword\Mods\Caveman2Cosmos

You need to direct it to your Mods folder, not Mods/Caveman2Cosmos.
 
Hmm..... Maybe I did include Caveman2Cosmos. Will try again later this evening. Right now supper is ready and tonight is Pot Roast! Yummmmm…….:D

Edit: Wife used her new pressure cooker and the Pot roast was so tender!

Oh and I got it to replace my Caveman2Cosmos version I had in Mods folder too. ;)
 
Last edited:
Hmm..... Maybe I did include Caveman2Cosmos. Will try again later this evening. Right now supper is ready and tonight is Pot Roast! Yummmmm…….:D

Edit: Wife used her new pressure cooker and the Pot roast was so tender!

Oh and I got it to replace my Caveman2Cosmos version I had in Mods folder too. ;)
Pressure cookers are the bomb for pot roasts. We started that last year ourselves. Hot dang. As they say in the south, Slap yo Mama that's good.
 
Pressure cookers are the bomb for pot roasts. We started that last year ourselves. Hot dang. As they say in the south, Slap yo Mama that's good.
She just did the meat this time in the pressure cooker. Do you throw in the potatoes at the same time? Carrots?
 
She just did the meat this time in the pressure cooker. Do you throw in the potatoes at the same time? Carrots?
You can. I'm not sure what Whisperr is doing with it lately though. Ours can also switch to a slow cook and sometimes that is useful as well, particularly for roasts that go for a few days so you can add some veggies on each day.
 
2nd son bought a 10 quart cooker for his momma last October for her B-day. And she's waited all this time to finally use it! :lol::crazyeye: :love: my :queen:.
 
2nd son bought a 10 quart cooker for his momma last October for her B-day. And she's waited all this time to finally use it! :lol::crazyeye: :love: my :queen:.
Yeah I was telling Whisperr we needed a pressure cooker for a long time because when I had one about 15 yrs ago it was awesome. Took her a while but now she sees why I was suggesting it.
 
The left over beef and the gravy is now going to make a batch of stupendous beef and noodles. :yumyum:

And we have Totally Hijacked this thread! :mischief:
:lol:

Sorry billw! :blush::D
 
hmm..
upload_2019-8-28_20-18-57.png

?
How did we lose our start screen?

EDIT:Damn I'm also crashing here and I'm not sure why.

I think I had failed to use the devsetup rather than the install batch... FPK live is now working very hard...

AAAANd yes, our screen is back... and I'm not crashing. So that's the deal... install.bat isn't what I should use to get setup initially. I get it.

@billw2015 You're gonna want to look at everything I've done tonight and let me know if I did actually update the dll or what the deal is...
 
Last edited:
@Thunderbrd @Toffer90 @raxo2222 + anyone else using GitKraken:
To give us cleaner commits (i.e. not a giant list of other peoples changes, and branching graph all the time) please select Pull (rebase) as the default Pull mode:
upload_2019-9-1_11-31-38.png


Technical explanation of why (it isn't important to understand it unless you care):
With the default "Pull (fast foward if possible)": if you committed changes and master changed since you last pulled (obviously this happens a lot) then GitKraken will do something called a merge-commit. What happens is that your local copy of the branch and the copy on github diverged because they have different sets of commits on them. That means that a branch merge is required, just as in any normal branching situation. The default way of doing this is a merge of your changes and the remote changes, which gets committed automatically. That means however that this merge contains all the changes done to both branches. That is perfectly fine and doesn't break anything, but it does mean that it shows up in the commit history as two branches instead of just one like you might expect, and that we get a bunch of spam from the git change bot in discord (its a bit dumb).
With Pull (rebase) it will instead take all your changes and "replay" them on top of the remote branch changes. This puts all your changes on top meaning that they don't show up as a branch but instead as a straight line.
Here is a video showing explaining the difference (although in this case it is in the context of two different branches, not a local and remote copy of the same branch):
Note: you should still use normal merge for different branches unless you know what you are doing with rebase.
 
I used gitkraken only to solve conflicts between main branch and prehistoric revision branch.
I use github desktop only for committing/updating stuff, and to check changes.
For reviewing local changes I use tortoiseGit.

This stuff can be prevented by first updating your repository, and then committing.
 
This stuff can be prevented by first updating your repository, and then committing.
No it can't. You can't update/pull with local changes. You have to commit them or stash them first. If it appears to work it is because whatever tool you use is automatically doing the stash and unstash for you. That is fine, it has the same effect is rebase pull pretty much, except that you cannot commit more than once, and only just before you push. One of the main benefits of git is that you can commit multiple times before you pull or push, it doesn't limit you to committing all your changes directly to the remote repository. The correct fix for this is the one I describe, to use rebase pull.

and to check changes.
For reviewing local changes I use tortoiseGit.
What is the difference between checking changes and reviewing changes? Seems painful to me, you can do all these things with just GK and you don't need to juggle three programs then, but whatever makes you happy!
 
No it can't. You can't update/pull with local changes. You have to commit them or stash them first. If it appears to work it is because whatever tool you use is automatically doing the stash and unstash for you. That is fine, it has the same effect is rebase pull pretty much, except that you cannot commit more than once, and only just before you push. One of the main benefits of git is that you can commit multiple times before you pull or push, it doesn't limit you to committing all your changes directly to the remote repository. The correct fix for this is the one I describe, to use rebase pull.


What is the difference between checking changes and reviewing changes? Seems painful to me, you can do all these things with just GK and you don't need to juggle three programs then, but whatever makes you happy!
I meant checking history in github desktop.

I guess you are used to gitkraken, so this stuff is easy for you.
 
I guess you are used to gitkraken, so this stuff is easy for you.
Yeah it took me a while to get used to it (there is a couple of things in the interface that were a little weird, like the contents in the middle changing based on what you are doing), but I use it solely now because it has a few features that make it a lot better than Github Desktop. Regardless if you do decide to try it more I am in discord to explain things you need (although you worked out the automatic merge system pretty quick, so I can't imagine you won't be able to handle the rest of it).
 
@Thunderbrd @Toffer90 @raxo2222 + anyone else using GitKraken:
To give us cleaner commits (i.e. not a giant list of other peoples changes, and branching graph all the time) please select Pull (rebase) as the default Pull mode:
View attachment 533858

Technical explanation of why (it isn't important to understand it unless you care):
With the default "Pull (fast foward if possible)": if you committed changes and master changed since you last pulled (obviously this happens a lot) then GitKraken will do something called a merge-commit. What happens is that your local copy of the branch and the copy on github diverged because they have different sets of commits on them. That means that a branch merge is required, just as in any normal branching situation. The default way of doing this is a merge of your changes and the remote changes, which gets committed automatically. That means however that this merge contains all the changes done to both branches. That is perfectly fine and doesn't break anything, but it does mean that it shows up in the commit history as two branches instead of just one like you might expect, and that we get a bunch of spam from the git change bot in discord (its a bit dumb).
With Pull (rebase) it will instead take all your changes and "replay" them on top of the remote branch changes. This puts all your changes on top meaning that they don't show up as a branch but instead as a straight line.
Here is a video showing explaining the difference (although in this case it is in the context of two different branches, not a local and remote copy of the same branch):
Note: you should still use normal merge for different branches unless you know what you are doing with rebase.
So using this method is not saying that you're saying your changes should override any conflicts right? The way you explain the first method sounds right but you're not talking about what changes take precedent over the other, you're talking about how it looks all crazy on the graph when this happens - yeah that's been a little(a lot) confusing. This might really help with seeing it the way I'm thinking it should be.
 
So using this method is not saying that you're saying your changes should override any conflicts right?
Conflicts are *always* conflicts, it will never just overwrite them. All this method does is put your changes on top of all the other ones, so it is equivalent to you having only just applied those changes to the latest versions of the files. Essentially it just makes the commit history look cleaner in this case.

One thing to note though is that it changes how resolving conflicts works, it makes it more fiddly: you have to apply and resolve each of your local commits (if I remember correctly), however GK automates this process so it is just like doing a series of normal merges. If it does end up being too complicated to resolve conflicts like that for a particular set of changes, then you can always abort and switch back to do a merge commit instead, where conflicts only need to be resolved once. However if you are doing lots of local commits where there will be conflicts between pushes you should be using a branch, and these problems would be moot anyway.
 
@billw2015 @Thunderbrd @Toffer90 @JosEPh_II @raxo2222

I'am not sure how i did it but i somehow managed to remove myself from the Caveman2Cosmos Github organisaton:confused::mad::lol:. Defenitely wasn't what i wanted to do but i can still work on C2C so it's not a problem:thumbsup:.

You guys simply have to review my pull requests and approve and merge them if you think that my changes should be in C2C.
 
Top Bottom