Commit Graph

43 Commits

Author SHA1 Message Date
brian m. carlson
720068bd97
gitignore: ignore the vendor directory
We plan to drop vendoring, but we still want to allow people to vendor
data if they'd like to allow them to build offline.  Let's ignore the
vendor directory so that this doesn't make the working tree dirty.
2022-09-07 19:42:10 +00:00
brian m. carlson
e670c00833
gitignore: remove lines for ronn
Since we're no longer using ronn, let's remove the patterns and comments
for it in `.gitignore`.
2022-07-11 15:15:53 +00:00
Chris Darroch
161d2df58b Makefile,docs/man: build dynamic ronn index file
The docs/man/index.txt file is intended to provide URL mappings
for the HTML hyperlinks ronn(1) can generate for references it finds
in our manual page Markdown source files; e.g., the text strings
"git-config(1)" and "gitignore(5)" can be hyperlinked to appropriate
URLs wherever they appear.

However, because we run ronn in the top-level directory of the project,
the docs/man/index.txt file is never seen or used.  Moreover, it contains
only a single URL mapping, and that goes to an older manual page hosting
site (and uses HTTP not HTTPS).

If we generate the index.txt file dynamically before running ronn then
we can extract all the currently listed external manual page references
(i.e., those not referring to other Git LFS manual pages) from the
"SEE ALSO" sections of our *.ronn source files, and map those to
corresponding URLs under either https://git-scm.com/docs/ for Git manual
pages or https://man7.org/linux/man-pages/ for other references.

And by placing this dynamically generated index.txt file in the
top-level directory, we can ensure that ronn will find and utilize it.

Finally, we add our new index.txt to our .gitignore because it's now
generated at build time, and we remove the old docs/man/index.txt file.
2022-02-07 00:24:34 -08:00
brian m. carlson
9daf439cf0
Add support for a fake locale for testing
Sometimes we'd like to test to see how much of or whether our code is
localized.  However, it's very burdensome to create a full localization
in order to do so.  To help us, let's create a special, autogenerated
locale, i-reverse, which is generated by simply reversing all the
English words.  Add a script to do this automatically for us.

However, don't generate this locale on typical builds, since users might
not have xgotext installed, and adding this locale would bloat the
binary needlessly in most cases.
2022-01-18 17:05:02 +00:00
brian m. carlson
947b26503e
Makefile: build translations when compiling
Let's make sure we build the translations into the binary when possible.
Specifically, if the msgfmt command exists, let's compile the .po files
into .mo files and then embed their contents into the binary using the
generator command to do that.

Let's also ignore the built .mo files and the generated .pot template
files so we don't check them in.
2021-11-15 14:59:20 +00:00
brian m. carlson
182ed28852
tr: add a tool to build locales into the binary
Currently, Git LFS has the benefit of being a single, relocatable
binary.  While it is customary to store locales in /usr/share/locales on
Unix systems, this isn't necessarily the case on Windows, and we'd like
to preserve the ability of users to move the binary where they like.

As a result, let's add a program which can be run by go generate that
embeds these translations into the binary.  They are Base64-encoded to
make handling them a little easier and avoiding need to write giant
strings of backslashed escape sequences.  The reader will note that this
is based off the related command to embed the manual pages.
2021-11-10 14:30:29 +00:00
brian m. carlson
a487e7c3b7
script/cibuild: install scutiger during tests
Scutiger is our reference git-lfs-transfer implementation, so let's
install it during CI, clean up after tests, ignore our temporary
directory, and add code to appropriately make use of the binary in
tests.

If Scutiger is not available, let the tests pass unless we're in CI,
where we should always have the binary available.  Also, skip the tests
when the repository is a SHA-256 repository, since Scutiger uses
libgit2, which doesn't yet support SHA-256 repositories.
2021-07-20 19:16:00 +00:00
Taylor Blau
2097051b12 t: store test_count{,.lock} in t, not t/remote 2018-07-11 13:58:02 -05:00
Taylor Blau
219b7e0a3d t: prefix all existing tests with t- 2018-07-09 16:24:25 -05:00
Stephen Gelman
9f96b558ff Update gitignore to add some temp files that get created when building debs 2017-07-17 19:55:12 +00:00
Sebastian Schuberth
a759a2fd05 Use goversioninfo instead of windres to embed Windows resources
windres is not always present whereas goversioninfo is easy to install.

This also fixes the generation of resource.syso to be part of the
standard build script instead of only the AppVeyor CI build.

Finally, adapt update-version.sh to patch versioninfo.json.
2016-12-15 12:27:47 +01:00
Sebastian Schuberth
c690255bb6 Embed the Git LFS icon and version information into the Windows executable
This fixes the display of the application icon in Windows' uninstall
dialog and allows Inno Setup to use the version information from the
executable.

Note that AppVeyor has windres.exe in all these locations:

C:\cygwin\bin\windres.exe
C:\cygwin64\bin\windres.exe
C:\MinGW\bin\windres.exe
C:\mingw-w64\i686-5.3.0-posix-dwarf-rt_v4-rev0\mingw32\bin\windres.exe
C:\msys64\mingw32\bin\windres.exe
C:\msys64\mingw64\bin\windres.exe
C:\msys64\usr\bin\windres.exe
C:\Qt\Tools\mingw482_32\bin\windres.exe
C:\Qt\Tools\mingw491_32\bin\windres.exe
C:\Qt\Tools\mingw492_32\bin\windres.exe
C:\Qt\Tools\mingw530_32\bin\windres.exe
C:\Ruby193\DevKit\mingw\bin\windres.exe
C:\Ruby23\DevKit\mingw\bin\windres.exe
C:\Ruby23-x64\DevKit\mingw\bin\windres.exe

But only the Ruby versions work without giving an "preprocessing failed"
error.
2016-12-08 16:23:17 +01:00
Steve Streeting
effc7bf12d Don't ignore source files named lfstest-*.go, only compiled binaries 2016-07-13 14:28:52 +01:00
Taylor Blau
05495b1f56 Merge pull request #1222 from zeldin/gccgo
Create Makefiles for building with gccgo
2016-07-07 10:43:37 -06:00
Taylor Blau
ce52008c78 gitignore: ignore lfstest-* files 2016-06-02 08:48:07 -06:00
Marcus Comstedt
9a8648c916 Create Makefile for building with gccgo 2016-05-18 14:54:53 +02:00
Steve Streeting
e970264f00 Use man content for `help <cmd>' and '<cmd> --help'
Call 'go generate ./commands' to create string entries from .ronns which
the cobra command can then use (added to the build scripts)
2015-09-14 17:26:57 +01:00
Andy Neff
ec50fd2ba2 Cleaned up multiple keys some 2015-07-31 16:40:23 -04:00
Andy Neff
183ad44953 Move the repos directory
Having the repos directory in the docker directory causes it to be
sent to the docker daemon every time, which is a complete waste.
Best solution was to move the repos dir out of dockers
2015-07-23 23:18:36 -04:00
Andy Neff
68b29afe52 Got Debian signing packages
I had 5 ways forward, I picked #6
1) don't sign. That's generally only acceptable for private packages
2) Make whomever edited the changelog last create signed .deb and .dsc.
   This seems like a pain for whomever is developing the packages
3) Change the changelog to a uid in the signing.key. I did not like
   taking credit away from whomever SHOULD be in the changelog
4) Have the distributing person add the changelog email address as
   an additional uid in their pgp key... this sounds like bad practice
   to me.
5) Build the .deb package, break it apart, manually sign, and re-
   archive. While possible, seemed prone to failure in corner
   cases down the road...
6) Use -p option of pgp to point to a script removing the the
   --local-user option that was forcing the .deb to be signed by
   the last developer of the changelog, not the person generating
   the distributions. This seemed best...

Does not handle the public key yet in Debian
2015-07-23 23:18:36 -04:00
Andy Neff
66f945540b Building debian 8 repo successfully 2015-07-23 23:18:35 -04:00
Andy Neff
a359dc3af6 First working draft of docker repository scripts working 2015-07-23 23:18:35 -04:00
Andy Neff
182ae63679 Simplified the SUDO variable out, since most people shouldn't need it 2015-07-12 05:37:38 +00:00
Mike McQuaid
b45aeef609 bootstrap: setup GOPATH if it isn't already set.
This variable is a bit of a mystery to non-Go developers and it's
unclear how you set it up properly. As a result, if it's not set let's
set everything up how Go likes it. Ignore the `src` directory that
we're creating now.

This will also help keep the Homebrew formula simpler.

Closes #388.
2015-07-03 10:21:52 +01:00
Andy Neff
4a71627779 RPMs for Centos 5/6/7
Currently uses the the internal golang linker, so
git-lfs has no build-id. The debug pacakges will
not work out of the box until this is fixed.
2015-05-28 23:34:18 -04:00
Rick Olson
67e13fa433 update scripts 2015-05-25 12:30:14 -06:00
Rick Olson
615b4d814e fix merge conflict 2015-05-21 14:13:57 -06:00
Rick Olson
98407dd3ca integration tests cleanup after themselves unless told not to 2015-05-21 10:27:40 -06:00
Rick Olson
667cde0c4f test/local is not used anymore 2015-05-18 13:45:35 -06:00
Rick Olson
b685624ca3 rename tests => test 2015-05-15 11:29:24 -06:00
Stephen Gelman
a5acd518f0 Add debian directory and gitignore temporary build files 2015-05-15 15:27:21 +00:00
Rick Olson
5fc4fde5fb initial crappy sh test 2015-05-14 11:56:05 -06:00
Rick Olson
e37b695477 rename hawser => git-lfs 2015-03-19 13:30:55 -06:00
Rick Olson
928000feab updating go import paths 2015-01-30 14:08:47 -05:00
rubyist
66463b66c6 go away .test artifacts 2014-06-03 14:36:26 -04:00
rubyist
2ab8c3d27e Merge branch 'master' into no-more-local-import-paths
Conflicts:
	.gitignore
2014-06-03 14:36:04 -04:00
rubyist
ff7bed01bd remove redundant clean up 2014-06-03 11:39:37 -04:00
Rick Olson
a01f633063 add script for building man files 2014-06-02 17:17:59 -06:00
rubyist
76b22cbaf4 stricter tests for decoding 2014-06-02 09:38:12 -06:00
rick
a3ad1a5d15 add a basic server for syncing 2014-06-02 09:33:51 -06:00
rick
27fd6ab2fe add gopack 2014-06-02 09:33:51 -06:00
risk danger olson
b8f7cb45b5 add script for benchmarking git-media on a full git repo's working dir 2014-06-02 09:33:10 -06:00
risk danger olson
4b9690c46e add script/build 2014-06-02 09:33:09 -06:00