Jump to content

GIT Rev number?


Recommended Posts

i have to count by myself?

i see every update get an sha1 key perhaps we can use this in any way?

or devs simply write a number into log lik 1,2,3,4 so we have a self mad revision because date only...

this Problem Was For Sql File Naming And Solve With New File Naming by Vladimir

Sooth We Can Use Sha1 ID For Ourselves

Git Handle Log Monitoring Very Fast And Plenary

Link to comment
Share on other sites

  • Replies 111
  • Created
  • Last Reply

Top Posters In This Topic

this one is in the readme

mangos/sql/updates/README

=== File name descriptin ===
File names are divided into two parts. First part is the date+counter 
that show commit apply date that will be compatible with database after apply update. 
The second part of the name, is the table that needs and update or has been added. 
See an example below:

        2008_10_17_01_characters_character_spell.sql
        |          |  |          |
        |          |  |          |
        |          |  |          The table character_spell
        |          |  |          will need an update.
        |          |  |
        |          |  Name of affected DB (default recommended name)
        |          |   Can be: characters, mangos, realmd
        |          |
        |          Counter show number of sql update in updates list for provided data
        |          and set proper order for sql updates for some date
        |
        MaNGOS commit date related to sql update. For related commit
        you can see [url]http://github.com/mangos/mangos/commits/master[/url]
        Expected commit will be in commits list for provided date and it will have
        sql update file name (2008_10_17_01_characters_character_spell.sql in our case) in list
        changed files, After appling this update DB compatiable with found commit.

and this for smart people?

MaNGOS_08101701_ScriptDev2...
MaNGOS_08101702_ScriptDev2...
MaNGOS_08101703_ScriptDev2...
...

Link to comment
Share on other sites

I know it's all new and strange and this is probably going to take time to adjust, but using the Git GUI I'm trying to get the latest changes/additions to MaNGOS and I can't figure out for the life of me how to do it. It doesn't look like it's doing anything at all.

I'm worried that I'm going to be resigned to a life of having to delete my local repository, and then re-clone the whole of MaNGOS every time I want to compile an updated version, and this seems horribly wasteful.

it is simple to get the changes. just like in svn you do an update to get the latest rev. in git you use the "git pull" command and it atomatically merges the current master with your local copy.

regards,

jdg

Link to comment
Share on other sites

it is simple to get the changes. just like in svn you do an update to get the latest rev. in git you use the "git pull" command and it atomatically merges the current master with your local copy.

regards,

jdg

Did you read the whole thread, it's not about how to get the source, it's how to organize with other projects and scripts. Now we have a system that updates, but we don't get a rev number. Now we can write UDB_erm...MaNGOS_11102008.sql, wrf! How to get the date/rev or any other number from GIT anyays.

Link to comment
Share on other sites

http://blogs.gnome.org/newren/2008/03/31/many-different-kinds-of-revision-specifiers/

Interesting blog about VCS

Also will this help, at least to be User-Friendly for the eyes to see what changes or revision changes have been made: http://github.com/mangos/mangos/network Or maybe this: http://github.com/mangos/mangos/commits/master/

BTW: To comment on some of the Pros with SVN and Cons with Git, i find it very difficult to see some people have forgotten already how slow and hard it was to get into the svn part of mangos, even more in the last couple of months. As any can see git is amazingly fast, it may not have revision numbering like svn (maybe it will or maybe we have not study enough about it to know how to script/config it) but i rather have a very fast dependable system than one that falls short when it get a lot of people, slow to check all for just wanting to have a numbering.

Ideally of course the numbering is very need it since it gives us an idea of what version each and everyone has but maybe we can also find some way of doing this with git. Am still studying it but i do think that it has some kind of way of dealing with this problem.

Link to comment
Share on other sites

As SVN assigns revision numbers sequentially (starting from 1) even very old projects such as Mozilla have short unique revision numbers (Mozilla is only up to 6 digits in length). Many users find this convenient when entering revisions for historical research purposes. They also find this number easy to embed into their product, supposedly making it easy to determine which sources were used to create a particular executable. However since the revision number is global to the entire repository, including all branches, there is still a question of which branch the revision number corresponds to.

Unless the last committed revision is recorded. Since revisions are global for a repository, the last committed revision makes it possible to determine which branch was used.

As Git uses a SHA1 to uniquely identify a commit each specific revision can only be described by a 40 character hexadecimal string, however this string not only identifies the revision but also the branch it came from.

In practice the first 8 characters tends to be unique for a project, however most users try to not rely on this over the long term. Rather than embedding long commit SHA1s into executables we have to generate a uniquely named tag. This is an additional step, but a simple one. But may inacceptable by devs and others.

Link to comment
Share on other sites

One of the big issues with SVN and SourceForge was the increasing instability. The SVN repository was over 1.4GB in size with full history.

Additionaly SVN does not work offline, Git does. You have full diffs and logs even without internet connection. That all is stuff SVN does not have.

Plus, many people constantly downloaded from SVN, where it was not necessary.

Git is intended for developers, and it is used to ease development process.

For "normal" users who just want to run MaNGOS, there will be pre-built binaries once the switch to client 3.0.2 is done.

Link to comment
Share on other sites

But devs anyway will can't use this svn revs in sql update names

That wouldn't be a big problem, it's just naming convention.

One of the big issues with SVN and SourceForge was the increasing instability. The SVN repository was over 1.4GB in size with full history.

Additionaly SVN does not work offline, Git does. You have full diffs and logs even without internet connection. That all is stuff SVN does not have.

Plus, many people constantly downloaded from SVN, where it was not necessary.

Git is intended for developers, and it is used to ease development process.

Few days ago I persuaded myself to do local mirror of svn repository and whole mirror of mangos repository on my PC has ~220MB (svn 1.4.6). Pity I did it for nothing ...

That way it satisfied both conditions of being accessible without internet connection and to limit downloading of new revisions to just once, even when applying many patches with many conflicting sources (that patching process mostly solved automatically).

For "normal" users who just want to run MaNGOS, there will be pre-built binaries once the switch to client 3.0.2 is done.

so nothing for more advanced users who wants to add some patches into core & compile for themselves, they have to use GIT now ... :/

To be honest, what I dislike on GIT is mostly non-existing GUI backend like SVN Tortoise and unusable default revision numbering.

The revision numbering can be worked around as it is now in process (well I worked with ClearCase few years ago where revision number also was unknown term - solved by labelling on release).

What I really dislike is missing tortoise-like backend. Not because of svn update (that is bugged anyway in tortoise) or patch creation - for both I used commandline svn up / svn diff ... but the 'trivial' thing of showing me which sources/directories have been changed and because of quite good 'patch apply'.

Link to comment
Share on other sites

Welcome to a messy world...

As a lot of members here, I was using svn to checkout a particular version of the sources to apply patchs found in this forum and personal patchs, but now it seems to be impossible with this new source manager as we do not know the version we get.

As said before in this topic, is it possible to maintain both svn ang git repository?

I do not blame dev for changing repository as maybe it's easier for them, but most of other devs will be lost (as I am actually).

Thank you for your great job but please try to think about us poor windows devs.

Link to comment
Share on other sites

One of the big issues with SVN and SourceForge was the increasing instability. The SVN repository was over 1.4GB in size with full history.

Additionaly SVN does not work offline, Git does. You have full diffs and logs even without internet connection. That all is stuff SVN does not have.

Plus, many people constantly downloaded from SVN, where it was not necessary.

Git is intended for developers, and it is used to ease development process.

For "normal" users who just want to run MaNGOS, there will be pre-built binaries once the switch to client 3.0.2 is done.

i dont wether to cry, or louagh, perhaps a midlle thing, in the start. one donwloades some shitty repacks, came to forums and people said l2compile.. learned to SVN, then compile, read forums because VS2003 at that time needed SP1, sigh,and now when we have learned it all, you say....DEVS only we are going GIT, just take the BINS.....uhm...what?....GRAUR!!!!, are you kidding, it might be that Devs are coder but lemme tell you a think you ¤#¤%"% without the communty you woulndt even find your own bugs, so please refrain!, from saying such shit, what you are say,is...that only Devs...that means c++ coder should compile all others should just Fuck off and the the precompiled bins......man...im no really flamer, but this one kinda hit in a soft spot, alot of us had some reeeally had days, learning some of this stuff, and now you change it agien....AND even says Screw you take the BINs?. im no saying that some a more valuable than others but a little insight dont hurt. and for us non-coders?, like...make a treadh wher you CLEARLY states the Pro of GIT for the DEV, because, for us? it just shit. at least for the windows users. -.-', OH amd btw, you dont think "normal" users need to compile, what i wanted a fix which was posted on the Boardm thats pretty much Copy-paste....

its not intended to be a flame, tho a bit of the words are a bit harsh...not intended to be offensive...

Link to comment
Share on other sites

i dont wether to cry, or louagh, perhaps a midlle thing, in the start. one donwloades some shitty repacks, came to forums and people said l2compile.. learned to SVN, then compile, read forums because VS2003 at that time needed SP1, sigh,and now when we have learned it all, you say....DEVS only we are going GIT, just take the BINS.....uhm...what?....GRAUR!!!!, are you kidding, it might be that Devs are coder but lemme tell you a think you ¤#¤%"% without the communty you woulndt even find your own bugs, so please refrain!, from saying such shit, what you are say,is...that only Devs...that means c++ coder should compile all others should just Fuck off and the the precompiled bins......man...im no really flamer, but this one kinda hit in a soft spot, alot of us had some reeeally had days, learning some of this stuff, and now you change it agien....AND even says Screw you take the BINs?. im no saying that some a more valuable than others but a little insight dont hurt. and for us non-coders?, like...make a treadh wher you CLEARLY states the Pro of GIT for the DEV, because, for us? it just shit. at least for the windows users. -.-', OH amd btw, you dont think "normal" users need to compile, what i wanted a fix which was posted on the Boardm thats pretty much Copy-paste....

its not intended to be a flame, tho a bit of the words are a bit harsh...not intended to be offensive...

You can download the source as a tarball from the GIT repository and then compile it.

Link to comment
Share on other sites

If the idea was to separate the wheat from the chaff then you truly have succeeded by moving over to git as this will see alot of folks drop away from mangos, its like handing everybody over to Trinity! Is this intentional as the devs can brainstorm there way thru this but leave 'normal' people wondering wtf!

Personally Im gutted that the devs have divided once again and splintered a great community Mangos/UDB/Scriptdev was an awesome collaboration which for the most part worked but never the less svn issues have forced git to become a reality which we all now live with so quit yer bitchin and provide some solutions as to how to get this working in a way we can understand what rev were working with and how to do multiple patches pls as I like most folks resist steep learning curves being added to an already busy schedule...

Link to comment
Share on other sites

We really appreciate your reactions on Git and the move, but we do not appreciate swear words, or rude behaviour.

Let me clarify a few things:

* The move was made as a reaction to what the MaNGOS community has asked for. Most people demanded for us being able to handle patches in a better way, faster and more timely close to the patch release. Git is the tool, that allows to fulfill this wish. Nothing else to add.

* Subversion was abused by many people as their download tool for MaNGOS. This never was the intention or the purpose of Subversion. If you want binaries to use on your local computer, it would be better to have official builds by the MaNGOS team, or by ScriptDev2 team.

* Moving from SVN to Git was not done with the intention of splitting the community into good and bad. Git is a tool, and its best used with command line. But honestly, if you can not use a source control system on the command line, you should not be using MaNGOS or any other server either. Instead you should start to learn that there is more than mouse clicks.

Final words: the team already has discussed development of a tool, that will allow normal user to see a linear revision number instead of the SHA1 hashes used by Git.

This is work in progress and something we have talked about.

In the future, I would prefer to see less whines, and more constructive posts. After all, MaNGOS is about learning, and if you are not willing to learn, then probably a different server project is a better home.

Link to comment
Share on other sites

ok in that case can you give us a good mean to get a particular version of the sources on Git.

No problem to learn how to use this new tool, but I think most of us are disturbed to see such a tool which is not as easy to use as svn.

Personnaly I use other repository systems at work but all of them are more user friendly whith real interface not command line system.

Anyway, mangos is a learning project of course, but it concerns C++ not git :P

Link to comment
Share on other sites

Guys, please, calm down.

GIT, as any other of the source systems is for *developers*. And it is developers that do the work, regardless whether it makes your life tad more complicated or not.

Learning how to do a git clone is is like... um.. 5 minutes if you are not drunk. You'll quickly appreciate the speed difference at first checkout, trust me.

And you wanted patches to appear faster? You have chance now.

If you want to make such fuss over GIT, you can as well throw away whole linux and quite lot of other systems that went *ahead* of SVN.

And goodbadguy, in GIT you don't really do patches, you do branches and then they are updating all by themselves whenever you pull something from the master repository. It's *really* easy, but requires you to stop thinking of 'patches'.

1

Link to comment
Share on other sites

I really don't get the switch to git. It just makes simple things complicated . Before, you only had to update, apply patch and compile and specify rev number on compile. Now you have to update, apply patches (which I still don't know how to do) and compile without even knowing the rev number.

Please, don't say this is what the community wants because that is just not true. Also, the repository is for devs, or in my case for example, the way to be able to have the AH bot patch. Does that make me not worthy of using the repository? Sorry, but I just don't believe the reasons you give.

I may believe git uses less BW, but please don't try to fool us saying it is much better to use than svn, because I find that a joke.

This whole git thing is just a really BIG step backwards.

Link to comment
Share on other sites

i mean when Mangos was downloaded by SVN it was better then now.because i tryed update files by Git but it sey mangos alredy exist or not any files known to Git.

and next thing is number of versin isn't supported by Bit. it is so no good.

next, i try patch for wotlk server and it need specific version of Mangos but with Git i cannot download the specific version for patch.

and i don't know why downloading by SVN is sometimes slower.

i mean it will better when go back to SVN

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use