top

Package vcs provides the ability to work with varying version control systems (VCS), also known as source control systems (SCM) though the same interface.

This package includes a function that attempts to detect the repo type from the remote URL and return the proper type. For example,

remote := "https://github.com/Masterminds/vcs"
local, _ := ioutil.TempDir("", "go-vcs")
repo, err := NewRepo(remote, local)

In this case repo will be a GitRepo instance. NewRepo can detect the VCS for numerous popular VCS and from the URL. For example, a URL ending in .git that's not from one of the popular VCS will be detected as a Git repo and the correct type will be returned.

If you know the repository type and would like to create an instance of a specific type you can use one of constructors for a type. They are NewGitRepo, NewSvnRepo, NewBzrRepo, and NewHgRepo. The definition and usage is the same as NewRepo.

Once you have an object implementing the Repo interface the operations are the same no matter which VCS you're using. There are some caveats. For example, each VCS has its own version formats that need to be respected and checkout out branches, if a branch is being worked with, is different in each VCS.

Imported by 272 package(s) ΒΆ

  1. github.com/2opremio/helm/config
  2. github.com/Azure/draft/pkg/draft/pack/repo/installer
  3. github.com/Azure/draft/pkg/plugin/installer
  4. github.com/Barberrrry/glide/cfg
  5. github.com/Barberrrry/glide/cmd
  6. github.com/Barberrrry/glide/util
  7. github.com/ChrisHines/dep
  8. github.com/Civil/dep
  9. github.com/EwanValentine/dep
  10. github.com/FGrosse/glide/action
  11. github.com/FGrosse/glide/cfg
  12. github.com/FGrosse/glide/msg
  13. github.com/FGrosse/glide/repo
  14. github.com/FGrosse/glide/util
  15. github.com/Go-zh/dep
  16. github.com/JackSpirou/glide/cmd
  17. github.com/Masterminds/glide-report
  18. github.com/Masterminds/glide-report/rules
  19. github.com/Masterminds/glide/action
  20. github.com/Masterminds/glide/cfg
  21. github.com/Masterminds/glide/msg
  22. github.com/Masterminds/glide/repo
  23. github.com/Masterminds/glide/util
  24. github.com/ReSTARTR/gps
  25. github.com/Skarlso/glide/action
  26. github.com/Skarlso/glide/cfg
  27. github.com/Skarlso/glide/repo
  28. github.com/Skarlso/glide/util
  29. github.com/TheHippo/glide/cmd
  30. github.com/adg/gps
  31. github.com/akutz/glide/action
  32. github.com/akutz/glide/cfg
  33. github.com/akutz/glide/cmd
  34. github.com/akutz/glide/msg
  35. github.com/akutz/glide/repo
  36. github.com/akutz/glide/util
  37. github.com/albrow/glide/action
  38. github.com/albrow/glide/cfg
  39. github.com/albrow/glide/msg
  40. github.com/albrow/glide/repo
  41. github.com/albrow/glide/util
  42. github.com/alde/glide/cfg
  43. github.com/alde/glide/repo
  44. github.com/alde/glide/util
  45. github.com/andrewzeneski/glide/cfg
  46. github.com/andrewzeneski/glide/cmd
  47. github.com/andrewzeneski/glide/util
  48. github.com/avidal/dep
  49. github.com/bacongobbler/glide/cfg
  50. github.com/bacongobbler/glide/repo
  51. github.com/bacongobbler/glide/util
  52. github.com/belak/base16-builder-go
  53. github.com/blainsmith/dep
  54. github.com/briansorahan/dep
  55. github.com/brianstarke/dep
  56. github.com/bryanpaluch/glide/cfg
  57. github.com/bryanpaluch/glide/repo
  58. github.com/bryanpaluch/glide/util
  59. github.com/cafebazaar/helm/config
  60. github.com/campoy/dep
  61. github.com/caseyhadden/glide/cmd
  62. github.com/caseyhadden/glide/util
  63. github.com/caseyhadden/glide/yaml
  64. github.com/cpg1111/glide/cmd
  65. github.com/cpg1111/glide/util
  66. github.com/cpg1111/glide/yaml
  67. github.com/daniel-garcia/glide/cfg
  68. github.com/daniel-garcia/glide/repo
  69. github.com/daniel-garcia/glide/util
  70. github.com/deis/helm/config
  71. github.com/dictav/dep
  72. github.com/dlespiau/dep
  73. github.com/dmitris/glide/cfg
  74. github.com/dmitris/glide/repo
  75. github.com/dmitris/glide/util
  76. github.com/dutchcoders/dep
  77. github.com/dvwallin/glide/cmd
  78. github.com/favadi/glide/cfg
  79. github.com/favadi/glide/cmd
  80. github.com/favadi/glide/util
  81. github.com/felipeweb/dep
  82. github.com/fibonacci1729/glide/cfg
  83. github.com/fibonacci1729/glide/repo
  84. github.com/fibonacci1729/glide/util
  85. github.com/franciscocpg/glide/action
  86. github.com/franciscocpg/glide/cfg
  87. github.com/franciscocpg/glide/msg
  88. github.com/franciscocpg/glide/repo
  89. github.com/franciscocpg/glide/util
  90. github.com/fschl/glide/cfg
  91. github.com/fschl/glide/repo
  92. github.com/fschl/glide/util
  93. github.com/garywu125/glide/cfg
  94. github.com/garywu125/glide/repo
  95. github.com/garywu125/glide/util
  96. github.com/gdm85/glide/cfg
  97. github.com/gdm85/glide/repo
  98. github.com/gdm85/glide/util
  99. github.com/geramirez/compliance-masonry/tools/vcs
  100. github.com/geramirez/glide/cmd
  101. github.com/geramirez/glide/util
  102. github.com/geramirez/glide/yaml
  103. github.com/golang/dep/gps
  104. github.com/groob/dep
  105. github.com/haya14busa/dep
  106. github.com/hectorj/glide/cfg
  107. github.com/hectorj/glide/cmd
  108. github.com/hectorj/glide/util
  109. github.com/helm/helm-classic/config
  110. github.com/helm/helm/config
  111. github.com/idubinskiy/dep
  112. github.com/imikushin/glide/cmd
  113. github.com/imikushin/glide/util
  114. github.com/imikushin/glide/yaml
  115. github.com/ionrock/buildpack/core
  116. github.com/itscaro/glide/cmd
  117. github.com/itsjamie/glide/cmd
  118. github.com/jackspirou/glide/cmd
  119. github.com/jchauncey/glide/cmd
  120. github.com/jgeiger/dep
  121. github.com/jmank88/dep
  122. github.com/joeygoode/dep
  123. github.com/jonboulle/glide/cmd
  124. github.com/jrick/glide/cfg
  125. github.com/jrick/glide/cmd
  126. github.com/jrick/glide/util
  127. github.com/jstemmer/dep
  128. github.com/jstemmer/gps
  129. github.com/karfield/glide/cfg
  130. github.com/karfield/glide/repo
  131. github.com/karfield/glide/util
  132. github.com/kelcecil/glide/action
  133. github.com/kelcecil/glide/cfg
  134. github.com/kelcecil/glide/msg
  135. github.com/kelcecil/glide/repo
  136. github.com/kelcecil/glide/util
  137. github.com/kevin-cantwell/gps
  138. github.com/kildevaeld/apprun
  139. github.com/klaidliadon/glide/cfg
  140. github.com/klaidliadon/glide/repo
  141. github.com/klaidliadon/glide/util
  142. github.com/kngu9/glide/cfg
  143. github.com/kngu9/glide/repo
  144. github.com/kngu9/glide/util
  145. github.com/kshlm/glide/cfg
  146. github.com/kshlm/glide/cmd
  147. github.com/kshlm/glide/util
  148. github.com/kubepack/dep/gps
  149. github.com/kubepack/kubepack/commands
  150. github.com/kubepack/pack/commands
  151. github.com/lamielle/glide/cfg
  152. github.com/lamielle/glide/cmd
  153. github.com/lamielle/glide/util
  154. github.com/lanej/helm/helm/action
  155. github.com/martinlindhe/base16-builder-go
  156. github.com/masterminds/glide-report
  157. github.com/masterminds/glide-report/rules
  158. github.com/masterminds/glide/action
  159. github.com/masterminds/glide/cfg
  160. github.com/masterminds/glide/msg
  161. github.com/masterminds/glide/repo
  162. github.com/masterminds/glide/util
  163. github.com/mattfarina/glide-stripvcs
  164. github.com/mattfarina/go-test2
  165. github.com/mem/dep
  166. github.com/mfycheng/glide/action
  167. github.com/mfycheng/glide/cfg
  168. github.com/mfycheng/glide/msg
  169. github.com/mfycheng/glide/repo
  170. github.com/mfycheng/glide/util
  171. github.com/mgutz/glide/action
  172. github.com/mgutz/glide/cfg
  173. github.com/mgutz/glide/repo
  174. github.com/mgutz/glide/util
  175. github.com/mh-cbon/glide/cfg
  176. github.com/mh-cbon/glide/repo
  177. github.com/mh-cbon/glide/util
  178. github.com/michelleN/helm/config
  179. github.com/miolini/glide/cfg
  180. github.com/miolini/glide/cmd
  181. github.com/miolini/glide/util
  182. github.com/mvdan/dep
  183. github.com/myENA/glide/action
  184. github.com/myENA/glide/cfg
  185. github.com/myENA/glide/msg
  186. github.com/myENA/glide/repo
  187. github.com/myENA/glide/util
  188. github.com/n0needt0/glide/cfg
  189. github.com/n0needt0/glide/repo
  190. github.com/n0needt0/glide/util
  191. github.com/nathanielc/dep
  192. github.com/nathanielc/gps
  193. github.com/nathany/dep
  194. github.com/ngdinhtoan/glide/action
  195. github.com/ngdinhtoan/glide/cfg
  196. github.com/ngdinhtoan/glide/msg
  197. github.com/ngdinhtoan/glide/repo
  198. github.com/ngdinhtoan/glide/util
  199. github.com/nkatsaros/dep
  200. github.com/nmiyake/dep
  201. github.com/nourish/glide/cfg
  202. github.com/nourish/glide/repo
  203. github.com/nourish/glide/util
  204. github.com/opencontrol/compliance-masonry-go/tools/vcs
  205. github.com/opencontrol/compliance-masonry/tools/vcs
  206. github.com/paulmach/glide/cmd
  207. github.com/paulmach/glide/util
  208. github.com/paulmach/glide/yaml
  209. github.com/polaris1119/glide/cfg
  210. github.com/polaris1119/glide/repo
  211. github.com/polaris1119/glide/util
  212. github.com/ryanfowler/glide/action
  213. github.com/ryanfowler/glide/cfg
  214. github.com/ryanfowler/glide/msg
  215. github.com/ryanfowler/glide/repo
  216. github.com/ryanfowler/glide/util
  217. github.com/s-urbaniak/glide/cfg
  218. github.com/s-urbaniak/glide/repo
  219. github.com/s-urbaniak/glide/util
  220. github.com/sdboyer/gps
  221. github.com/sdboyer/vsolver
  222. github.com/sebdah/dep
  223. github.com/sectioneight/dep
  224. github.com/sgotti/glide/cfg
  225. github.com/sgotti/glide/repo
  226. github.com/sgotti/glide/util
  227. github.com/simonswine/dep
  228. github.com/skarlso/glide/action
  229. github.com/skarlso/glide/cfg
  230. github.com/skarlso/glide/repo
  231. github.com/skarlso/glide/util
  232. github.com/smothiki/helm/config
  233. github.com/spenczar/gps
  234. github.com/szuecs/glide-report
  235. github.com/szuecs/glide-report/rules
  236. github.com/thockin/glide/cfg
  237. github.com/thockin/glide/repo
  238. github.com/thockin/glide/util
  239. github.com/tony/vcsync/vcsync
  240. github.com/tudyzhou/glide/cfg
  241. github.com/tudyzhou/glide/repo
  242. github.com/tudyzhou/glide/util
  243. github.com/urakozz/depupdates
  244. github.com/vburenin/glide/action
  245. github.com/vburenin/glide/cfg
  246. github.com/vburenin/glide/repo
  247. github.com/vburenin/glide/util
  248. github.com/whitecypher/vgo
  249. github.com/yanyiwu/glide/cfg
  250. github.com/yanyiwu/glide/repo
  251. github.com/yanyiwu/glide/util
  252. github.com/yeka/glide/cfg
  253. github.com/yeka/glide/repo
  254. github.com/yeka/glide/util
  255. github.com/yuya008/gps
  256. github.com/zjx20/glide/action
  257. github.com/zjx20/glide/cfg
  258. github.com/zjx20/glide/msg
  259. github.com/zjx20/glide/repo
  260. github.com/zjx20/glide/util
  261. gopkg.in/Masterminds/glide.v0/action
  262. gopkg.in/Masterminds/glide.v0/cfg
  263. gopkg.in/Masterminds/glide.v0/cmd
  264. gopkg.in/Masterminds/glide.v0/msg
  265. gopkg.in/Masterminds/glide.v0/repo
  266. gopkg.in/Masterminds/glide.v0/util
  267. gopkg.in/Masterminds/glide.v0/yaml
  268. gopkg.in/masterminds/glide.v0/action
  269. gopkg.in/masterminds/glide.v0/cfg
  270. gopkg.in/masterminds/glide.v0/msg
  271. gopkg.in/masterminds/glide.v0/repo
  272. gopkg.in/masterminds/glide.v0/util