SA-MP Forums

SA-MP Forums (https://forum.sa-mp.com/index.php)
-   Discussion (https://forum.sa-mp.com/forumdisplay.php?f=84)
-   -   Scripting as a team (https://forum.sa-mp.com/showthread.php?t=645837)

Wiruspwns 05/12/2017 07:05 AM

Scripting as a team
 
Hello,

For few days i have to start scripting in a team. We have big project, and one developer is not enough. What is the best way to script in team. In terms of file sharing?

CrystalMethod 05/12/2017 07:49 AM

Re: Scripting as a team
 
I'd say either GitHub or DropBox. Only worry is if two people start working on the script at the same time out of dropbox, and when they both save, one person's work is lost. If you guys make separate copies of the script to work on sections, then paste it all together at the end, perhaps that'd work? I'm not totally sure, but that's my best guest. I've only ever scripted solo, never on a team.

Y_Less 05/12/2017 12:16 PM

Re: Scripting as a team
 
Quote:

Originally Posted by CrystalMethod (Post 3963165)
I'd say either GitHub or DropBox. Only worry is if two people start working on the script at the same time out of dropbox, and when they both save, one person's work is lost. If you guys make separate copies of the script to work on sections, then paste it all together at the end, perhaps that'd work? I'm not totally sure, but that's my best guest. I've only ever scripted solo, never on a team.

This is why github is vastly superior - code tracking and merging. It will automatically take care of issues like this for you. Technically it isn't "github" that does this, but "git", the source code control system that github provides one possible web interface too. If you want to keep your code private, either get a github premium account or use a different website like bitbucket which allows private repositories for free.

git allows full history and many other features like diffs for seeing small changes, branches for developing major new features off the active code base until they are ready, bisections for finding when a bug was introduced, and more.

Plus you might want to look at y_master, which allows you to seamlessly split a mode up in to multiple scripts. Then one person can have the source code to the fisherman job and compile that to a filterscript, while someone else has access to the source code to the admin system and can compile that to a different filterscript. The fisherman script can call functions normally that are in the admin system, and vice-versa (i.e. can just do "if (IsPlayerAdmin(x))" instead of using "CallRemoteFunction()". So the code doesn't know that the function is in a different script, and each scripter only has access to part of the code. This way if you don't fully trust someone yet (e.g. a new team member) you can give them the other filterscripts and just some of the code. They can still modify and compile their part, but they have not been given the full code so can't leak it all. Then the lead scripter (or an automated system) which has all of the code at once can compile everything in to one big script instead of in to lots of little filterscripts. Again, all seamlessly without having to change any code.

Juvanii 05/12/2017 04:20 PM

Re: Scripting as a team
 
I suggest to script alone, most sa-mp servers developers have worked lonely and released large servers. Someday you will make problems with developers and they will open a new server with same script with some edits on it.

Y_Less 05/12/2017 07:05 PM

Re: Scripting as a team
 
Quote:

Originally Posted by Juvanii (Post 3963357)
Someday you will make problems with developers and they will open a new server with same script with some edits on it.

If only someone had said a way to entirely prevent this in the post immediately before yours...

Dignity 05/12/2017 07:14 PM

Re: Scripting as a team
 
Use Bitbucket and SourceTree. Essentially the same as Github but free. I also like to keep my dev files on ****** Drive so it's shared with my other developer.

DRIFT_HUNTER 05/12/2017 10:08 PM

Re: Scripting as a team
 
Like people already said, GIT for code tracking and merging. GitHub is most popular and i would say for a reason (could be argued). GitHub provides GUI application to help you and has best UI (at least that's what i personally think - you or someone else may disagree). But the downside of GitHub is that you need to pay for private repository. Best alternative would be BitBucket. Please note while they allow private repositories, they limit it to team of 5 people (at least they did about a year ago - that is last time i used BitBucket).

Misiur 05/12/2017 10:13 PM

Re: Scripting as a team
 
My 2 cents, I hated bitbucket at work, is use gitlab exclusively for my private projects. It strives to be github clone I think, as it has all the features github has, such as project board. You can login with your github account. Unlimited free private repositories! And only one fuckup so far (they lost 4 hours of users commits once)

AndreiWow 05/12/2017 10:23 PM

Re: Scripting as a team
 
Quote:

Originally Posted by Juvanii (Post 3963357)
I suggest to script alone, most sa-mp servers developers have worked lonely and released large servers. Someday you will make problems with developers and they will open a new server with same script with some edits on it.

You can't achieve success without a team.

Kaperstone 05/12/2017 10:49 PM

Re: Scripting as a team
 
Quote:

Originally Posted by AndreiWow (Post 3963469)
You can't achieve success without a team.

Actually, if you're a hard working, then you might do.

Quote:

Originally Posted by Misiur (Post 3963465)
My 2 cents, I hated bitbucket at work, is use gitlab exclusively for my private projects. It strives to be github clone I think, as it has all the features github has, such as project board. You can login with your github account. Unlimited free private repositories! And only one fuckup so far (they lost 4 hours of users commits once)

As I read an article about GitLab, it strives to be what GitHub isn't.


All times are GMT. The time now is 10:32 AM.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.