Commit Graph

20 Commits

Author SHA1 Message Date
Taylor Blau
c5bfafb83d commands/command_pointer.go: introduce --check option
We have used the 'git-lfs-pointer(1)' command historically to compare
varying implementation of the Git LFS protocol. This has been done by
passing both `--file` and `--stdin` to the command, which will in turn
compare the contents of both handles and return appropriately whether
they are the same or different.

One use case that Git LFS pointer does not yet support directly is
_checking_ to see whether a given file is a valid Git LFS pointer. This
is a different use-case than before, since we aren't doing any
comparison, we're simply checking whether the official implementation of
Git LFS can parse a given stream as a pointer.

As an aside, one way to do this today is the following:

  $ git lfs clean < a.txt | git lfs pointer --stdin --file my.ptr

Where we first generate a pointer of the file 'a.txt' (via
`git-lfs-clean(1)`), and then redirect that to `git-lfs-pointer(1)`
against our own file.

Let's make this above incantation easier to execute by providing a
functionally equivalent `--check` option. Running `git lfs pointer
--check` (and passing either `--file`, or `--stdin`) will return either
1 or 0 depending on whether or not the given pointer file was invalid or
not.
2019-01-31 19:36:01 -08:00
Lars Schneider
376464d6b2 git: change gitHashObject() to accept an io.Reader 2017-08-22 19:34:30 +02:00
Lars Schneider
9c0f43293f move gitHashObject() to git package
The only side effect of this refactoring should be that the Git LFS
is disabled for the Git subprocess. No other functional changes are
intended.
2017-08-22 19:34:29 +02:00
risk danger olson
bba8f3b876 update package imports 2016-11-15 10:01:18 -07:00
risk danger olson
a12cdc889f RegisterCommand() can no longer disable commands
the config is available at init(), so isCommandEnabled() checks can be
pulled out of the RegisterCommand() callback, simplifying its signature.
2016-09-01 10:09:38 -06:00
risk danger olson
093e6d49a2 update all command setup to use RegisterCommand 2016-09-01 08:46:26 -06:00
Taylor Blau
0f63130c23 commands, lfs: resolve localstorage in PreRun, not init 2016-08-22 16:21:04 -06:00
risk danger olson
98af5944e1 build commands outside of package init() 2016-08-10 09:33:25 -06:00
Taylor Blau
4593d0a641 vendor: vendor dependencies in vendor/ using Glide
- script/vendor received an update in order to work with Glide
- import paths have been rewritten to work with GO15VENDOREXPERIMENT
2016-05-23 12:10:35 -06:00
Sebastian Schuberth
da2935d9a7 pointer: Only write the encoded pointer information to Stdout
This allows to create a pointer file by redirecting Stdout like

    $ git lfs pointer --file=path/to/file > pointer-to-file

Before this change, "pointer-to-file" would also contain the line saying

    "Git LFS pointer for path/to/file"

which makes the pointer file invalid.
2016-03-22 12:40:06 +01:00
rick
795a1ebc0e remove all Short messages 2015-09-17 16:08:28 -06:00
Ryan Simmen
214983d322 LFS Extensions: pointer file manipulation 2015-07-31 17:07:35 -04:00
Rick Olson
d678d4bf33 update import paths 2015-05-25 12:20:50 -06:00
Rick Olson
216623196a Use goimports instead of gofmt 2015-05-13 13:43:41 -06:00
rubyist
0a9ebafc6a Merge branch 'master' into concurrent-uploads
Conflicts:
	commands/command_push.go
	lfs/pointer.go
	lfs/pointer_clean.go
	lfs/pointer_smudge.go
2015-04-29 11:46:20 -04:00
Rick Olson
596c5f6560 requires stdin content on certain commands
Taken from:

http://stackoverflow.com/questions/22744443/check-if-there-is-something-
to-read-on-stdin-in-golang
2015-04-24 14:24:32 -06:00
rubyist
f951e3ed77 Update things from master 2015-04-24 14:17:11 -04:00
Rick Olson
9da6255cc1 implement 'git lfs pointer --stdin' 2015-04-22 13:36:16 -06:00
Rick Olson
bd1b1ed793 change the pointer command's switches 2015-04-22 13:17:53 -06:00
Rick Olson
c6b722db63 implement the pointer command 2015-04-22 11:41:41 -06:00