posh-git
go-git
posh-git | go-git | |
---|---|---|
18 | 20 | |
7,434 | 5,526 | |
- | 1.8% | |
0.0 | 9.0 | |
2 months ago | 8 days ago | |
PowerShell | Go | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
posh-git
-
PowerShell: The object-oriented shell you didn't know you needed
Ah if you want auto completion for native commands they need to be registered first. PSReadLine provides autocompletion support but it only works by default with things builtin to PowerShell itself. For `git` there is a fairly popular module called posh-git [1] that provides auto completion support for some of the well known commands. Git for Windows also calls it out [2]. You can also provide your own custom auto complete calls with Register-ArgumentCompleter [3]. Hope this helps!
[1] https://github.com/dahlbyk/posh-git
-
The bash book to rule them all
PowerShell: https://github.com/dahlbyk/posh-git/blob/master/src/GitPromp...
I believe this is clean Bash code and clean PowerShell code, and a script with a certain complexity. The functions inside the Bash script are documented using comments, the ones inside the PowerShell script are documented using "structured comments" (similar to javadoc/xmldoc/...). The parameters of the functions inside the PowerShell script also contain metadata which is used to provide completion on the commandline and similar functionality as the command line flags you demonstrated.
I just learned about 'getopts' in Bash, which you can actually also use to implement parameters to a Bash function. So what you are showing on a script level, can also be applied for functions. Did not know about that.
Still, not saying PowerShell is better than Bash in a Linux context, but it seems a lot of Linux users have a gut reaction to right out reject PowerShell. I think it does have some advantages for certain use cases, like more complex scripts, a cross-platform context, ... and of course, for someone with a .NET background it's easier to program more complex things with it.
- Stuck trying to execute a ps1 from my github repo
-
Kitsch-Prompt - golang based cross-platform shell prompt
Starship is pretty slick, but I feel like it's lacking in the customization department. It's easy to get it to display whatever you want, but hard to get it to show it exactly how you want it. If you want a "powerline" style prompt, that's basically impossible in Starship (although it's one of the most upvoted feature requests). Or using color gradients on the prompt - I have this 16.7M color display, why am I limited to flat colors? Finally I'm a big fan of posh git, and Starship doesn't have the ability to display anything like this natively. I used a custom command to run a modified version of posh-git for a long time, but it wasn't very fast.
-
What is the name of the cli tool that shows your current branch and changes you've made?
If you're on Windows, I've used posh-git in the past.
- Repos and PowerShell
- posh-git
- Adding Git autocomplete to PowerShell (Windows)
-
I just discovered aliases and I'm looking for more.
The Posh-Git module for showing Git repo details in the prompt.
-
How to increase productivity at work with a pretty Windows Terminal and smart Powerline tools
Install Posh-Git using this command:
go-git
-
Show HN: Gogit – Just enough Git (in Go) to push itself to GitHub
I interpret "aims to be fully compatible" as meaning the operations it implements are intended to be compatible with how Git implements those operations. I do not interpret this statement as saying they implement all features of Git.
They offer a document which directly shows what is and isn't supported, and it specifically notes quite a few things that aren't supported yet: https://github.com/go-git/go-git/blob/master/COMPATIBILITY.m...
The godoc also says right upfront it "nowadays covers the majority of the plumbing read operations and some of the main write operations, but lacks the main porcelain operations such as merges." - https://pkg.go.dev/github.com/go-git/go-git/v5#pkg-overview
> I'm saying it's not a reasonable choice over just using git directly, and is unlikely to ever be.
OK, that's apparently true for your use-case. But again, what go-git implements is directly useful to a number of very popular projects, as well as literally two thousand less popular ones.
I find the exported functionality to be high quality, at least for my own use-case. I'm not commenting on the code quality. If I need a shed for bikes, and someone is giving out free but ugly bikesheds, I'm thankful. I don't complain about the color of the bikeshed.
- [Golang] Ejecutar comandos Go-git sobre SSH
-
Git framework/library for Java
The go frameworks has some particular limitations at the moment (merge, rebase https://github.com/go-git/go-git/blob/master/COMPATIBILITY.md) but overall great framework.Used for some go tools..
- Go-Git: A highly extensible Git implementation in pure Go
-
Auto fetch config from Git
You can monitor the sha of your config repos main branch with this I expect. https://github.com/go-git/go-git
-
Is there a way to clone remote git repositories programmatically with go, without the need to import a whole dependency for that?
I'm remaking a package named owl. One of the features of this package is the ability to clone remote repositories. The first time I affront this problem, I solved it using go.Cmd and git command. Is there a way to achieve something similar without importing or using a dependency like go-git. Something like download files via http, ssh or something similar.
-
Git as back end for applications like Figma and Google Docs
I think there are already some Git SDKs out there. For example https://github.com/go-git/go-git
-
Kitsch-Prompt - golang based cross-platform shell prompt
I see that you’re using go-git, which has a problem with worktree.Status being unusably slow—and in a prompt you’ll most certainly need to use it. I know because I tried writing my prompt using go-git, and had it hang on a work repo for a good minute. Eventually bit the bullet and switched to git2go (libgit2 bindings; uses cgo).
- Ask HN: Is there a good tutorial on how to create a GitHub clone?
- Small Side Project On Sunday: Small Tool To Bump The Version
What are some alternatives?
oh-my-posh - The most customisable and low-latency cross platform/shell prompt renderer
watchman - Watches files and records, or triggers actions, when they change.
Git Credential Manager for Windows
sapling - A Scalable, User-Friendly Source Control System.
GitExtensions - Git Extensions is a standalone UI tool for managing git repositories. It also integrates with Windows Explorer and Microsoft Visual Studio (2015/2017/2019).
git - GitGitGadget's Git fork. Open Pull Requests here to submit them to the Git mailing list
GitLink - Making .NET open source accessible!
git2go - Git to Go; bindings for libgit2. Like McDonald's but tastier.
Bonobo Git Server - Bonobo Git Server for Windows is a web application you can install on your IIS and easily manage and connect to your git repositories. Go to homepage for release and more info.
OS-Lab
LibGit2Sharp - Git + .NET = ❤
scalar - Scalar: A set of tools and extensions for Git to allow very large monorepos to run on Git without a virtualization layer