FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Handle less common proxy configuration options · Issue #4164 · libgit2/libgit2 · GitHub

Handle less common proxy configuration options #4164

Description

There are a handful of odd, edge-case proxy configurations that can be specified in the CLI that aren't yet supported in libgit2. Here's a list of those and I'll expand on each:

Unsetting with git config

In your git config, you can set http.proxy to empty to specify that that configuration should not use a proxy.

[http]
    proxy = 

Doing this causes libgit to throw an invalid url exception right now.

NO_PROXY

Setting the NO_PROXY environment variable allows the user to specify a comma-separated list of domain expressions for which a proxy should NOT be used. There are a lot of nuances for what a domain expression refers to and it might be overkill to support every possible variation of what it could be (unless there's a package that can handle them nicely).

    "192.168.1.1"       # Matches exactly the given IP
    "192.168.1.1:8080"  # Matches exactly the given IP and port
    "example.com"       # Matches exactly the domain example.com
    "*.example.com"     # Matches every machine in the example.com domain
    ".example.com"      # Identical to the above
    "foo.example.com"   # Matches exactly the foo.example.com machine
    "localhost"

Per-url proxy configuration

This one's kind of a toughie. You can configure a specific setting per-url under the http.* variable domain.

[http]
    proxy = proxyA.com
[http "https://MyInternalDomain.com"]
    proxy = 

It would enable us to support something like this, which basically uses proxyA.com for all traffic, except any traffic that goes through https://MyInternalDomain.com, which will use no proxy (or whatever proxy you choose to configure for it).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions


      Back | FazBrowse Home | New Git URL