Git Poll & Discussion about Version Control Systems

Everything else that doesn't fall into one of the other PB categories.
User avatar
Shield
Addict
Addict
Posts: 1021
Joined: Fri Jan 21, 2011 8:25 am
Location: 'stralia!
Contact:

Git Poll & Discussion about Version Control Systems

Post by Shield »

Hey Guys!

Just a little poll out of personal curiosity. :)

Are you using Git for your PureBasic projects?
http://www.poll-maker.com/poll375832x0eE14276-14

Of course discussions and personal opinions are welcome!


Cheers,

Shield.
Last edited by Shield on Sun Aug 02, 2015 11:28 am, edited 1 time in total.
Image
Blog: Why Does It Suck? (http://whydoesitsuck.com/)
"You can disagree with me as much as you want, but during this talk, by definition, anybody who disagrees is stupid and ugly."
- Linus Torvalds
User avatar
Danilo
Addict
Addict
Posts: 3037
Joined: Sat Apr 26, 2003 8:26 am
Location: Planet Earth

Re: Git Poll

Post by Danilo »

Shield wrote:Are you using Git for your PureBasic projects?
http://www.poll-maker.com/poll375832x0eE14276-14

Of course discussions and personal opinions are welcome!
Generally I think such OpenSource repositories are more useful for codes where
the compiler system is also open source. Otherwise it's of limited use, if you make
something OpenSource on such a big public site, and people can't freely use it
because it requires a closed-source, commercial product.
That somehow limits the freedom of the "free" in open source. Not everyone
is able to use such codes freely.

Beside that general thought, I started using Git when I came to MonkeyX,
because many users there have libs and frameworks at Github and BitBucket.
Same with many BlitzMax modules.
Many users also used Google code, but most are moving to GitHub now,
because Google Code is closing anyway.

In the PB community very few guys put libs at GitHub and announce it here.
Most things are made available at the Tricks 'n' Tips section, and get changed
and discussed there, including bug reports etc.
After getting used to git, I also thought about putting some of my PB stuff
at GitHub, but I'm not sure many users here would use that. They are used
to use just the forum.

[X] Yes, I am using Git. But not with PB, yet.
User avatar
Shield
Addict
Addict
Posts: 1021
Joined: Fri Jan 21, 2011 8:25 am
Location: 'stralia!
Contact:

Re: Git Poll

Post by Shield »

I agree with your points. However, the question wasn't about open source projects. :)
Personally I barely publish anything as open source. Most of my code is personal or work-related,
yet I'm still using Git because it's IMO the best VCS for software projects.
[X] Yes, I am using Git. But not with PB, yet.
I should have put in this option as well.
Image
Blog: Why Does It Suck? (http://whydoesitsuck.com/)
"You can disagree with me as much as you want, but during this talk, by definition, anybody who disagrees is stupid and ugly."
- Linus Torvalds
User avatar
Danilo
Addict
Addict
Posts: 3037
Joined: Sat Apr 26, 2003 8:26 am
Location: Planet Earth

Re: Git Poll

Post by Danilo »

Shield wrote:However, the question wasn't about open source projects. :)
Sorry, I misunderstood that. Probably because I like to write libs, imports etc.,
and make it available for free to everyone. I will put my upcoming MX stuff on
GitHub, like I made PB codes available for free at the forums here over the last 15 years.
That's what I was talking about. For personal projects, I just use local directories and
zip those directories for backups (local PC, NAS, web space).
User avatar
Shield
Addict
Addict
Posts: 1021
Joined: Fri Jan 21, 2011 8:25 am
Location: 'stralia!
Contact:

Re: Git Poll

Post by Shield »

I should rephrase it: the question wasn't exclusively about open source projects.
We can certainly talk about this issue in this thread since there probably isn't too much to talk about otherwise. :)
(I have changed the title of the topic)

Having more PB presence on Github would certainly nice. I'm trying to get a little insight with this poll
on how many active members use Git or another kind of VCS. Even though the numbers won't have much meaning,
it should still be informative to a certain degree:

Is it not useful for PB? Is it too difficult to use or get into? Do PB devs simply think that it's not convenient enough?
Why is that? What can be done about it? Some questions that I think would be interesting to be answered.
Danilo wrote:I made PB codes available for free at the forums here over the last 15 years.
I'm also lurking around the forums for over a decade by now. I'm not nearly as involved as you were
and I've also moved on to other languages a long long time ago, yet I can't leave this community behind. :)

I think there is much room for improvement in this community regarding collaboration.
The PB community is generally very eager to help and participate, but the Tricks 'n' Tips section just
isn't the right place for the development of something larger than a function or a single file.

PBOSL was a good start but eventually failed due to the lack of participation and maintenance.
What's needed for open source projects is a small team of maintainers and a bunch'o'guys doing
pull requests on existing code for review.

Then again, this is a rather small community so maybe the old ways are the path to follow. :)
Image
Blog: Why Does It Suck? (http://whydoesitsuck.com/)
"You can disagree with me as much as you want, but during this talk, by definition, anybody who disagrees is stupid and ugly."
- Linus Torvalds
Little John
Addict
Addict
Posts: 4519
Joined: Thu Jun 07, 2007 3:25 pm
Location: Berlin, Germany

Re: Git Poll

Post by Little John »

Danilo wrote:Generally I think such OpenSource repositories are more useful for codes where
the compiler system is also open source. Otherwise it's of limited use, if you make
something OpenSource on such a big public site, and people can't freely use it
because it requires a closed-source, commercial product.
That somehow limits the freedom of the "free" in open source. Not everyone
is able to use such codes freely.
In principle, I agree with this.

However, for one of my free programs, users have requested that I make it open source. And I personally want that program to outlive me. If the source code is open, people have the option to translate it to other languages.
As soon as I have the time, I'll first make the code better readable, and then I'll (try to) put it on Github. I hope it's not too difficult to get into it.
User avatar
skywalk
Addict
Addict
Posts: 3972
Joined: Wed Dec 23, 2009 10:14 pm
Location: Boston, MA

Re: Git Poll

Post by skywalk »

Shield wrote:However, the question wasn't about open source projects. :)
Personally I barely publish anything as open source. Most of my code is personal or work-related, yet I'm still using Git because it's IMO the best VCS for software projects.
I find Fossil to be ideal for my projects.

Git was developed to support very large software(linux kernel) projects across large teams. Fossil was developed to support smaller projects(SQLite) amidst a close knit team. For this reason, both have diverging utility and ease of use issues when scale is considered. Git is overkill and unnecessarily complex for all but the largest of projects. And there are many competitors/offshoots/front ends to its market(Mercurial, Perforce, Subversion, CVS, etc.).

Fossil keeps all your changes in a single SQLite db.
Git is a bunch of files and folders.
Git relies on 3rd party apps for its gui, bug tracker, and wiki.
Fossil has them built-in.
Setting up a Git server(remote repository) with user permissions requires many lines and intimate OS knowledge.
A Fossil server(remote repository) can be set with 1 or 2 lines.
The nice thing about standards is there are so many to choose from. ~ Andrew Tanenbaum
User avatar
Shield
Addict
Addict
Posts: 1021
Joined: Fri Jan 21, 2011 8:25 am
Location: 'stralia!
Contact:

Re: Git Poll

Post by Shield »

Git is not that difficult to understand once you spent some time learning it.
Granted, it gets more complicated if you want to do very specific things,
but for my workflow everything I need can be learned in about ten minutes time:
clone, commit, push, pull, checkout, branch, reset. I do not use GUIs but the command line instead.

Deployment time of a system is not really an argument since all of this can be automated
and is irrelevant considering all other tasks that have to be done to finish a project.
Also, clicking on "New Repository" on Github or Bitbucket can hardly be called difficult. :)

I didn't try out Fossil but after CVS and SVN I'm glad I found myself using Git.
The thing is that it doesn't really matter what people use as long as people do version management.
It took me a long time to realize the value of such systems.

According to the poll so far it looks like most people that answered don't use VCS for their projects.
I'd like to know if there is a specific reason or if people just never tried and don't want to bother with it.


Edit: now I updated the title of the topic for real.
Image
Blog: Why Does It Suck? (http://whydoesitsuck.com/)
"You can disagree with me as much as you want, but during this talk, by definition, anybody who disagrees is stupid and ugly."
- Linus Torvalds
User avatar
Danilo
Addict
Addict
Posts: 3037
Joined: Sat Apr 26, 2003 8:26 am
Location: Planet Earth

Re: Git Poll

Post by Danilo »

Shield wrote:According to the poll so far it looks like most people that answered don't use VCS for their projects.
I'd like to know if there is a specific reason or if people just never tried and don't want to bother with it.
Git or similar systems are very useful for collaboration, but if you write something on your own,
it can get annoying to additionally do checkout, commit, etc. (because the files are protected).
Every time you want to change and add something, you have to checkout and commit it - that's an
additional management layer that takes time from you. So, as long as you work alone, it may not have
enough benefits to take time from you required for the additional management. It may just be annoying. ;)
User avatar
Shield
Addict
Addict
Posts: 1021
Joined: Fri Jan 21, 2011 8:25 am
Location: 'stralia!
Contact:

Re: Git Poll & Discussion about Version Control Systems

Post by Shield »

It isn't, really. It all depends on your intentions on how you want to use the VCS if you're developing by yourself.
- If you care about a clean history and a way to reproduce your work and roll back in case
something broke, you might want to make more frequent commits.
- If you just care about your work being backed up and easily shared between different computers,
it's enough to just commit once when you're done.

But sure, everyone has to decide by himself / herself what additional work is justifiable. :)
Image
Blog: Why Does It Suck? (http://whydoesitsuck.com/)
"You can disagree with me as much as you want, but during this talk, by definition, anybody who disagrees is stupid and ugly."
- Linus Torvalds
freak
PureBasic Team
PureBasic Team
Posts: 5929
Joined: Fri Apr 25, 2003 5:21 pm
Location: Germany

Re: Git Poll

Post by freak »

Danilo wrote:Git or similar systems are very useful for collaboration, but if you write something on your own,
it can get annoying to additionally do checkout, commit, etc. (because the files are protected).
Every time you want to change and add something, you have to checkout and commit it - that's an
additional management layer that takes time from you. So, as long as you work alone, it may not have
enough benefits to take time from you required for the additional management. It may just be annoying. ;)
You can also use it to "collaborate" with yourself. I do it often for cross-platform development: One repository on the Windows machine and a clone on the Mac and inside the Linux partition. I can push/pull changes between them freely without the need to worry about copying around individual files. I can even do changes on the Mac side while the Windows side has not yet commited changes without the need to worry about losing anything. After syncing up the repositories, I have a clear list of changes in the overall project. I can even make a clone to a USB stick and take it somewhere else and later reintegrate any changes made there with ease. Git is a good candidate for all this because it does not require a central server.

As for the poll: I mainly use Mercurial for my projects. The reason for that is simply that I used it before Git, so i am more familiar with it.
quidquid Latine dictum sit altum videtur
User avatar
Danilo
Addict
Addict
Posts: 3037
Joined: Sat Apr 26, 2003 8:26 am
Location: Planet Earth

Re: Git Poll & Discussion about Version Control Systems

Post by Danilo »

Does that mean Git integration will get added to PB IDE?

Switching between console or GUI clients (GitHub/SourceTree) and the IDE would be even more annoying/distracting.
User avatar
Shield
Addict
Addict
Posts: 1021
Joined: Fri Jan 21, 2011 8:25 am
Location: 'stralia!
Contact:

Re: Git Poll & Discussion about Version Control Systems

Post by Shield »

Danilo wrote:Does that mean Git integration will get added to PB IDE?
This was "discussed" here before (didn't get much attention):
http://www.purebasic.fr/english/viewtop ... =3&t=57690

Might be worth considering:
http://www.purebasic.fr/english/viewtop ... =3&t=61018
Image
Blog: Why Does It Suck? (http://whydoesitsuck.com/)
"You can disagree with me as much as you want, but during this talk, by definition, anybody who disagrees is stupid and ugly."
- Linus Torvalds
User avatar
Danilo
Addict
Addict
Posts: 3037
Joined: Sat Apr 26, 2003 8:26 am
Location: Planet Earth

Re: Git Poll & Discussion about Version Control Systems

Post by Danilo »

Quote:
Version Control Integration

You shouldn't have to leave the comfort of your own editor simply to interact
with your (or your team's) version control system.
freak
PureBasic Team
PureBasic Team
Posts: 5929
Joined: Fri Apr 25, 2003 5:21 pm
Location: Germany

Re: Git Poll & Discussion about Version Control Systems

Post by freak »

Danilo wrote:Does that mean Git integration will get added to PB IDE?
There are no plans for that at the moment.
quidquid Latine dictum sit altum videtur
Post Reply