MCPcopy Create free account
hub / github.com/antonmedv/gitmal / FormatFile

Method FormatFile

pkg/gitdiff/format.go:86–208  ·  view source on GitHub ↗
(f *File)

Source from the content-addressed store, hash-verified

84}
85
86func (fm *formatter) FormatFile(f *File) {
87 fm.WriteString("diff --git ")
88
89 var aName, bName string
90 switch {
91 case f.OldName == "":
92 aName = f.NewName
93 bName = f.NewName
94
95 case f.NewName == "":
96 aName = f.OldName
97 bName = f.OldName
98
99 default:
100 aName = f.OldName
101 bName = f.NewName
102 }
103
104 fm.WriteQuotedName("a/" + aName)
105 fm.WriteByte(' ')
106 fm.WriteQuotedName("b/" + bName)
107 fm.WriteByte('\n')
108
109 if f.OldMode != 0 {
110 if f.IsDelete {
111 fmt.Fprintf(fm, "deleted file mode %o\n", f.OldMode)
112 } else if f.NewMode != 0 {
113 fmt.Fprintf(fm, "old mode %o\n", f.OldMode)
114 }
115 }
116
117 if f.NewMode != 0 {
118 if f.IsNew {
119 fmt.Fprintf(fm, "new file mode %o\n", f.NewMode)
120 } else if f.OldMode != 0 {
121 fmt.Fprintf(fm, "new mode %o\n", f.NewMode)
122 }
123 }
124
125 if f.Score > 0 {
126 if f.IsCopy || f.IsRename {
127 fmt.Fprintf(fm, "similarity index %d%%\n", f.Score)
128 } else {
129 fmt.Fprintf(fm, "dissimilarity index %d%%\n", f.Score)
130 }
131 }
132
133 if f.IsCopy {
134 if f.OldName != "" {
135 fm.WriteString("copy from ")
136 fm.WriteQuotedName(f.OldName)
137 fm.WriteByte('\n')
138 }
139 if f.NewName != "" {
140 fm.WriteString("copy to ")
141 fm.WriteQuotedName(f.NewName)
142 fm.WriteByte('\n')
143 }

Callers 1

StringMethod · 0.80

Calls 5

WriteStringMethod · 0.95
WriteQuotedNameMethod · 0.95
WriteByteMethod · 0.95
FormatBinaryFragmentMethod · 0.95
FormatTextFragmentMethod · 0.95

Tested by

no test coverage detected