# GIT Client in base?



## JamesElstone (Dec 17, 2020)

Hi All,

This may have sailed past me, but what GIT client is in the FreeBSD base akin to `/usr/bin/svnlite` please?

Or does one need to install a port based client first to grab the FreeBSD source code?

Just want to confirm the official approach please!

Kr,
James


----------



## SirDice (Dec 17, 2020)

JamesElstone said:


> Or does one need to install a port based client now to grab the source code?


Yes. This used to be the case when FreeBSD used CVS too. But somebody created a useful small tool, just enough to fetch sources: https://forums.freebsd.org/threads/gitup.77863/ (modeled after svnup en cvsup).


----------



## kpedersen (Dec 17, 2020)

GitHub (FreeBSD is choosing to use this as a mirror?) currently supports SVN clients. So svnlite should actually be adequate until Microsoft notices this feature is useful and disables it.

By then hopefully we will have some implementation of git in base (git, got, git9, etc)


----------



## Phishfry (Dec 17, 2020)

What I don't understand is what happened to devel/git-lite ?
I see it was deleted and some mentions of flavors in the final commit:
"Convert git slave ports to flavors"

I used it as it has minimal dependencies. So where is this functionality?
I under stand this was a FreeBSD specific minimalistic build of git.(Slave Port)
Where did it go? Foldered into main git port?


----------



## twllnbrck (Dec 17, 2020)

Phishfry said:


> Where did it go? Foldered into main git port?


Yep. Seems to be a package flavor of devel/git now. There is also a git-tiny flavor which provides smallest possible number of dependencies PR 251689


----------



## gnath (Jan 2, 2021)

There is now devl/git-lite which works fine now.


----------



## marian_cerny (Feb 20, 2021)

Phishfry said:


> What I don't understand is what happened to devel/git-lite ?


The slave port for `git-lite` has been moved to a flavor. Now there is even a more minimalistic flavor called `git-tiny`. To install a flavor you can use:


```
cd /usr/ports/devel/git
env FLAVOR=tiny make install
```
Or `FLAVOR=tiny make install` in case you are using sh/bash/zsh.

Some info: ports.7: Add an example of how to use flavors


----------



## gnath (Feb 20, 2021)

Both packages are already in repository.


----------



## marian_cerny (Feb 20, 2021)

That's great. Of course you can install the package directly from FreeBSD repository (`pkg install git-tiny`) or use the code mentioned in my post above to install from ports (`env FLAVOR=tiny make install`).


----------



## debguy (Mar 1, 2021)

git can be ported to freeBSD so that no linux depends are present.  a mega-server wheighing tons and power company to store a million projects ... cannot be imported to svn

really nothing to do with if SVN or GIT is better ... it's what the man with the machine is talking to you with


----------



## SirDice (Mar 2, 2021)

debguy said:


> git can be ported to freeBSD so that no linux depends are present.


What do you think devel/git is?


----------



## chrcol (Apr 8, 2021)

what announcement announced this change of functionality and more importantly how to utilise it?


----------



## zirias@ (Apr 8, 2021)

The (still supported, although this will change, but probably not too soon) "standard" way for end users to update their ports with `portsnap` didn't change at all, so no need to announce anything here.

About transitioning ports to git, there were many mailing list postings, announcements also spread https://wiki.freebsd.org/git where you'll find anything you need for now if you want to get ports directly from the repository.

The handbook still has to be updated regarding this (and I'd expect that pretty soon). The update was already done for `src`: https://docs.freebsd.org/en/books/handbook/mirrors/#git

—
And regarding the original question: No git client is in base, and it doesn't really look like one will be included too soon. You will see discussions whether `svnlite` actually _needs_ a replacement. Many seem to think it doesn't (which IMHO makes sense, you don't _have_ to follow source repositories, it's optional…). The other discussion is whether `portsnap` will need a replacement once (maybe after EOL of 13) it is removed. Some think it doesn't either, but it also looks like `gitup` _could_ be a candidate for replacement. But it's probably too early in these discussions to predict the final outcome.


----------

