Skip to content

Commit 9939e97

Browse files
committed
Cleanup of unnecessary functionality in 'git'
1 parent c67f315 commit 9939e97

File tree

1 file changed

+9
-117
lines changed

1 file changed

+9
-117
lines changed

git/git.go

Lines changed: 9 additions & 117 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,6 @@ import (
1010
"strings"
1111
)
1212

13-
var GlobalFlags []string
14-
15-
func Version() (string, error) {
16-
versionCmd := exec.Command("git", "version")
17-
output, err := versionCmd.Output()
18-
if err != nil {
19-
return "", fmt.Errorf("error running git version: %s", err)
20-
}
21-
return firstLine(output), nil
22-
}
23-
2413
var cachedDir string
2514

2615
func Dir() (string, error) {
@@ -35,30 +24,12 @@ func Dir() (string, error) {
3524
return "", fmt.Errorf("Not a git repository (or any of the parent directories): .git")
3625
}
3726

38-
var chdir string
39-
for i, flag := range GlobalFlags {
40-
if flag == "-C" {
41-
dir := GlobalFlags[i+1]
42-
if filepath.IsAbs(dir) {
43-
chdir = dir
44-
} else {
45-
chdir = filepath.Join(chdir, dir)
46-
}
47-
}
48-
}
49-
5027
gitDir := firstLine(output)
51-
5228
if !filepath.IsAbs(gitDir) {
53-
if chdir != "" {
54-
gitDir = filepath.Join(chdir, gitDir)
55-
}
56-
5729
gitDir, err = filepath.Abs(gitDir)
5830
if err != nil {
5931
return "", err
6032
}
61-
6233
gitDir = filepath.Clean(gitDir)
6334
}
6435

@@ -157,58 +128,6 @@ func SymbolicFullName(name string) (string, error) {
157128
return firstLine(output), nil
158129
}
159130

160-
func Ref(ref string) (string, error) {
161-
parseCmd := exec.Command("git", "rev-parse", "-q", ref)
162-
parseCmd.Stderr = nil
163-
output, err := parseCmd.Output()
164-
if err != nil {
165-
return "", fmt.Errorf("Unknown revision or path not in the working tree: %s", ref)
166-
}
167-
168-
return firstLine(output), nil
169-
}
170-
171-
func RefList(a, b string) ([]string, error) {
172-
ref := fmt.Sprintf("%s...%s", a, b)
173-
listCmd := exec.Command("git", "rev-list", "--cherry-pick", "--right-only", "--no-merges", ref)
174-
listCmd.Stderr = nil
175-
output, err := listCmd.Output()
176-
if err != nil {
177-
return nil, fmt.Errorf("Can't load rev-list for %s", ref)
178-
}
179-
180-
return outputLines(output), nil
181-
}
182-
183-
func NewRange(a, b string) (*Range, error) {
184-
parseCmd := exec.Command("git", "rev-parse", "-q", a, b)
185-
parseCmd.Stderr = nil
186-
output, err := parseCmd.Output()
187-
if err != nil {
188-
return nil, err
189-
}
190-
191-
lines := outputLines(output)
192-
if len(lines) != 2 {
193-
return nil, fmt.Errorf("Can't parse range %s..%s", a, b)
194-
}
195-
return &Range{lines[0], lines[1]}, nil
196-
}
197-
198-
type Range struct {
199-
A string
200-
B string
201-
}
202-
203-
func (r *Range) IsIdentical() bool {
204-
return strings.EqualFold(r.A, r.B)
205-
}
206-
207-
func (r *Range) IsAncestor() bool {
208-
cmd := exec.Command("git", "merge-base", "--is-ancestor", r.A, r.B)
209-
return cmd.Run() != nil
210-
}
211-
212131
func CommentChar(text string) (string, error) {
213132
char, err := Config("core.commentchar")
214133
if err != nil {
@@ -261,7 +180,14 @@ func Remotes() ([]string, error) {
261180
}
262181

263182
func Config(name string) (string, error) {
264-
return gitGetConfig(name)
183+
configCmd := exec.Command("git", "config", name)
184+
output, err := configCmd.Output()
185+
if err != nil {
186+
return "", fmt.Errorf("unknown config key: %s", name)
187+
}
188+
189+
return firstLine(output), nil
190+
265191
}
266192

267193
func ConfigAll(name string) ([]string, error) {
@@ -270,48 +196,14 @@ func ConfigAll(name string) ([]string, error) {
270196
mode = "--get-regexp"
271197
}
272198

273-
configCmd := exec.Command("git", gitConfigCommand([]string{mode, name})...)
199+
configCmd := exec.Command("git", "config", mode, name)
274200
output, err := configCmd.Output()
275201
if err != nil {
276202
return nil, fmt.Errorf("Unknown config %s", name)
277203
}
278204
return outputLines(output), nil
279205
}
280206

281-
func GlobalConfig(name string) (string, error) {
282-
return gitGetConfig("--global", name)
283-
}
284-
285-
func SetGlobalConfig(name, value string) error {
286-
_, err := gitConfig("--global", name, value)
287-
return err
288-
}
289-
290-
func gitGetConfig(args ...string) (string, error) {
291-
configCmd := exec.Command("git", gitConfigCommand(args)...)
292-
output, err := configCmd.Output()
293-
if err != nil {
294-
return "", fmt.Errorf("Unknown config %s", args[len(args)-1])
295-
}
296-
297-
return firstLine(output), nil
298-
}
299-
300-
func gitConfig(args ...string) ([]string, error) {
301-
configCmd := exec.Command("git", gitConfigCommand(args)...)
302-
output, err := configCmd.Output()
303-
return outputLines(output), err
304-
}
305-
306-
func gitConfigCommand(args []string) []string {
307-
cmd := []string{"config"}
308-
return append(cmd, args...)
309-
}
310-
311-
func Alias(name string) (string, error) {
312-
return Config(fmt.Sprintf("alias.%s", name))
313-
}
314-
315207
func Run(args ...string) error {
316208
cmd := exec.Command("git", args...)
317209
return cmd.Run()

0 commit comments

Comments
 (0)