Skip to content

devlooped/CredentialManager

Icon Git Credential Manager Lib

Version Downloads EULA License

Open Source Maintenance Fee

To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an Open Source Maintenance Fee. While the source code is freely available under the terms of the License, this package and other aspects of the project require adherence to the Maintenance Fee.

To pay the Maintenance Fee, become a Sponsor at the proper OSMF tier. A single fee covers all of Devlooped packages.

Packages the official Git Credential Manager cross-platform credential store implementation supporting Windows, macOS and Linux for use as a NS2.0 library with no UI or external dependencies.

Release version numbers track the GCM releases themselves.

Usage

using GitCredentialManager;
...

ICredentialStore store = CredentialManager.Create("myapp");

// Store a credential
store.AddOrUpdate("https://foo.com", "myusr", "mypwd");

// Retrieve a credential
ICredential cred = store.Get("https://foo.com", "myusr");

Assert.Equal("myusr", cred.Account);
Assert.Equal("mypwd", cred.Password);

The namespace for the CredentialManager static factory class is the same as the official GCM itself for convenience: GitCredentialManager.

The optional namespace argument (myapp above) can be used to scope credential operations to your own app/service.

The library targets .NET Standard 2.0 for broad applicability.

Supported credential stores and their configuration is shared with the GCM project itself.

Important

If you use Git's built-in credential cache, a working installation of git is required. See GCM docs.

Releasing

To create a new release:

  1. Find & replace the latest release tag in this project to the desired release tag in the git-credential-manager project in the .netconfig file
  2. Run dotnet file sync -c:$env:TEMP\dotnet-file.md
  3. Use the contents of the generated file to update the release notes in the GitHub release. If no useful notes were generated, just copy the GCM ones.
  4. Create a PR like this one
  5. Once merged, create a matching release in this project.

Sponsors

Clarius Org MFB Technologies, Inc. SandRock DRIVE.NET, Inc. Keith Pickford Thomas Bolon Kori Francis Uno Platform Reuben Swartz Jacob Foshee Eric Johnson David JENNI Jonathan Ken Bonny Simon Cropp agileworks-eu Zheyu Shen Vezel ChilliCream 4OTC domischell Adrian Alonso Michael Hagedorn torutek mccaffers Seika Logiciel

Sponsor this project

Learn more about GitHub Sponsors

About

Packages the official Git Credential Manager cross-platform credential store implementation supporting Windows, macOS and Linux for use as a NS2.0 library with no UI or external dependencies.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Contributors

Languages