зеркало из https://github.com/microsoft/git.git
Merge branch 'ew/svn'
* ew/svn: Fix some doubled word typos Typofix in Makefile comment. Makefile: export NO_SVN_TESTS git-svn: migrate out of contrib (follow-up) git-svn: migrate out of contrib
This commit is contained in:
Коммит
e6ff54a261
|
@ -107,6 +107,7 @@ git-ssh-push
|
|||
git-ssh-upload
|
||||
git-status
|
||||
git-stripspace
|
||||
git-svn
|
||||
git-svnimport
|
||||
git-symbolic-ref
|
||||
git-tag
|
||||
|
|
|
@ -224,7 +224,7 @@ Merge tracking in Subversion is lacking and doing branched development
|
|||
with Subversion is cumbersome as a result. git-svn completely forgoes
|
||||
any automated merge/branch tracking on the Subversion side and leaves it
|
||||
entirely up to the user on the git side. It's simply not worth it to do
|
||||
a useful translation when the the original signal is weak.
|
||||
a useful translation when the original signal is weak.
|
||||
|
||||
TRACKING MULTIPLE REPOSITORIES OR BRANCHES
|
||||
------------------------------------------
|
7
Makefile
7
Makefile
|
@ -33,6 +33,10 @@ all:
|
|||
# Define NO_SYMLINK_HEAD if you never want .git/HEAD to be a symbolic link.
|
||||
# Enable it on Windows. By default, symrefs are still used.
|
||||
#
|
||||
# Define NO_SVN_TESTS if you want to skip time-consuming SVN interoperability
|
||||
# tests. These tests take up a significant amount of the total test time
|
||||
# but are not needed unless you plan to talk to SVN repos.
|
||||
#
|
||||
# Define PPC_SHA1 environment variable when running make to make use of
|
||||
# a bundled SHA1 routine optimized for PowerPC.
|
||||
#
|
||||
|
@ -134,7 +138,7 @@ SCRIPT_PERL = \
|
|||
git-shortlog.perl git-rerere.perl \
|
||||
git-annotate.perl git-cvsserver.perl \
|
||||
git-svnimport.perl git-mv.perl git-cvsexportcommit.perl \
|
||||
git-send-email.perl
|
||||
git-send-email.perl git-svn.perl
|
||||
|
||||
SCRIPT_PYTHON = \
|
||||
git-merge-recursive.py
|
||||
|
@ -653,6 +657,7 @@ GIT-CFLAGS: .FORCE-GIT-CFLAGS
|
|||
# with that.
|
||||
|
||||
export NO_PYTHON
|
||||
export NO_SVN_TESTS
|
||||
|
||||
test: all
|
||||
$(MAKE) -C t/ all
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
git-svn
|
||||
git-svn.xml
|
||||
git-svn.html
|
||||
git-svn.1
|
|
@ -1,44 +0,0 @@
|
|||
all: git-svn
|
||||
|
||||
prefix?=$(HOME)
|
||||
bindir=$(prefix)/bin
|
||||
mandir=$(prefix)/man
|
||||
man1=$(mandir)/man1
|
||||
INSTALL?=install
|
||||
doc_conf=../../Documentation/asciidoc.conf
|
||||
-include ../../config.mak
|
||||
|
||||
git-svn: git-svn.perl
|
||||
cp $< $@
|
||||
chmod +x $@
|
||||
|
||||
install: all
|
||||
$(INSTALL) -d -m755 $(DESTDIR)$(bindir)
|
||||
$(INSTALL) git-svn $(DESTDIR)$(bindir)
|
||||
|
||||
install-doc: doc
|
||||
$(INSTALL) git-svn.1 $(DESTDIR)$(man1)
|
||||
|
||||
doc: git-svn.1
|
||||
git-svn.1 : git-svn.xml
|
||||
xmlto man git-svn.xml
|
||||
git-svn.xml : git-svn.txt
|
||||
asciidoc -b docbook -d manpage \
|
||||
-f ../../Documentation/asciidoc.conf $<
|
||||
git-svn.html : git-svn.txt
|
||||
asciidoc -b xhtml11 -d manpage \
|
||||
-f ../../Documentation/asciidoc.conf $<
|
||||
test: git-svn
|
||||
cd t && for i in t????-*.sh; do $(SHELL) ./$$i $(TEST_FLAGS); done
|
||||
|
||||
# we can test NO_OPTIMIZE_COMMITS independently of LC_ALL
|
||||
full-test:
|
||||
$(MAKE) test GIT_SVN_NO_LIB=1 GIT_SVN_NO_OPTIMIZE_COMMITS=1 LC_ALL=C
|
||||
$(MAKE) test GIT_SVN_NO_LIB=0 GIT_SVN_NO_OPTIMIZE_COMMITS=1 LC_ALL=C
|
||||
$(MAKE) test GIT_SVN_NO_LIB=1 GIT_SVN_NO_OPTIMIZE_COMMITS=0 \
|
||||
LC_ALL=en_US.UTF-8
|
||||
$(MAKE) test GIT_SVN_NO_LIB=0 GIT_SVN_NO_OPTIMIZE_COMMITS=0 \
|
||||
LC_ALL=en_US.UTF-8
|
||||
|
||||
clean:
|
||||
rm -f git-svn *.xml *.html *.1
|
|
@ -1,45 +0,0 @@
|
|||
PATH=$PWD/../:$PATH
|
||||
if test -d ../../../t
|
||||
then
|
||||
cd ../../../t
|
||||
else
|
||||
echo "Must be run in contrib/git-svn/t" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
. ./test-lib.sh
|
||||
|
||||
GIT_DIR=$PWD/.git
|
||||
GIT_SVN_DIR=$GIT_DIR/svn/git-svn
|
||||
SVN_TREE=$GIT_SVN_DIR/svn-tree
|
||||
|
||||
svnadmin >/dev/null 2>&1
|
||||
if test $? != 1
|
||||
then
|
||||
test_expect_success 'skipping contrib/git-svn test' :
|
||||
test_done
|
||||
exit
|
||||
fi
|
||||
|
||||
svn >/dev/null 2>&1
|
||||
if test $? != 1
|
||||
then
|
||||
test_expect_success 'skipping contrib/git-svn test' :
|
||||
test_done
|
||||
exit
|
||||
fi
|
||||
|
||||
svnrepo=$PWD/svnrepo
|
||||
|
||||
set -e
|
||||
|
||||
if svnadmin create --help | grep fs-type >/dev/null
|
||||
then
|
||||
svnadmin create --fs-type fsfs "$svnrepo"
|
||||
else
|
||||
svnadmin create "$svnrepo"
|
||||
fi
|
||||
|
||||
svnrepo="file://$svnrepo/test-git-svn"
|
||||
|
||||
|
|
@ -8,7 +8,7 @@ use vars qw/ $AUTHOR $VERSION
|
|||
$GIT_SVN_INDEX $GIT_SVN
|
||||
$GIT_DIR $GIT_SVN_DIR $REVDB/;
|
||||
$AUTHOR = 'Eric Wong <normalperson@yhbt.net>';
|
||||
$VERSION = '1.1.1-broken';
|
||||
$VERSION = '@@GIT_VERSION@@';
|
||||
|
||||
use Cwd qw/abs_path/;
|
||||
$GIT_DIR = abs_path($ENV{GIT_DIR} || '.git');
|
10
t/Makefile
10
t/Makefile
|
@ -11,6 +11,7 @@ TAR ?= $(TAR)
|
|||
SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
|
||||
|
||||
T = $(wildcard t[0-9][0-9][0-9][0-9]-*.sh)
|
||||
TSVN = $(wildcard t91[0-9][0-9]-*.sh)
|
||||
|
||||
ifdef NO_PYTHON
|
||||
GIT_TEST_OPTS += --no-python
|
||||
|
@ -24,6 +25,15 @@ $(T):
|
|||
clean:
|
||||
rm -fr trash
|
||||
|
||||
# we can test NO_OPTIMIZE_COMMITS independently of LC_ALL
|
||||
full-svn-test:
|
||||
$(MAKE) $(TSVN) GIT_SVN_NO_LIB=1 GIT_SVN_NO_OPTIMIZE_COMMITS=1 LC_ALL=C
|
||||
$(MAKE) $(TSVN) GIT_SVN_NO_LIB=0 GIT_SVN_NO_OPTIMIZE_COMMITS=1 LC_ALL=C
|
||||
$(MAKE) $(TSVN) GIT_SVN_NO_LIB=1 GIT_SVN_NO_OPTIMIZE_COMMITS=0 \
|
||||
LC_ALL=en_US.UTF-8
|
||||
$(MAKE) $(TSVN) GIT_SVN_NO_LIB=0 GIT_SVN_NO_OPTIMIZE_COMMITS=0 \
|
||||
LC_ALL=en_US.UTF-8
|
||||
|
||||
.PHONY: $(T) clean
|
||||
.NOTPARALLEL:
|
||||
|
||||
|
|
|
@ -0,0 +1,50 @@
|
|||
. ./test-lib.sh
|
||||
|
||||
if test -n "$NO_SVN_TESTS"
|
||||
then
|
||||
test_expect_success 'skipping git-svn tests, NO_SVN_TESTS defined' :
|
||||
test_done
|
||||
exit
|
||||
fi
|
||||
|
||||
GIT_DIR=$PWD/.git
|
||||
GIT_SVN_DIR=$GIT_DIR/svn/git-svn
|
||||
SVN_TREE=$GIT_SVN_DIR/svn-tree
|
||||
|
||||
perl -e 'use SVN::Core' >/dev/null 2>&1
|
||||
if test $? -ne 0
|
||||
then
|
||||
echo 'Perl SVN libraries not found, tests requiring those will be skipped'
|
||||
GIT_SVN_NO_LIB=1
|
||||
fi
|
||||
|
||||
svnadmin >/dev/null 2>&1
|
||||
if test $? -ne 1
|
||||
then
|
||||
test_expect_success 'skipping git-svn tests, svnadmin not found' :
|
||||
test_done
|
||||
exit
|
||||
fi
|
||||
|
||||
svn >/dev/null 2>&1
|
||||
if test $? -ne 1
|
||||
then
|
||||
test_expect_success 'skipping git-svn tests, svn not found' :
|
||||
test_done
|
||||
exit
|
||||
fi
|
||||
|
||||
svnrepo=$PWD/svnrepo
|
||||
|
||||
set -e
|
||||
|
||||
if svnadmin create --help | grep fs-type >/dev/null
|
||||
then
|
||||
svnadmin create --fs-type fsfs "$svnrepo"
|
||||
else
|
||||
svnadmin create "$svnrepo"
|
||||
fi
|
||||
|
||||
svnrepo="file://$svnrepo/test-git-svn"
|
||||
|
||||
|
4
contrib/git-svn/t/t0000-contrib-git-svn.sh → t/t9100-git-svn-basic.sh
Normal file → Executable file
4
contrib/git-svn/t/t0000-contrib-git-svn.sh → t/t9100-git-svn-basic.sh
Normal file → Executable file
|
@ -3,7 +3,7 @@
|
|||
# Copyright (c) 2006 Eric Wong
|
||||
#
|
||||
|
||||
test_description='git-svn tests'
|
||||
test_description='git-svn basic tests'
|
||||
GIT_SVN_LC_ALL=$LC_ALL
|
||||
|
||||
case "$LC_ALL" in
|
||||
|
@ -17,6 +17,8 @@ esac
|
|||
|
||||
. ./lib-git-svn.sh
|
||||
|
||||
echo 'define NO_SVN_TESTS to skip git-svn tests'
|
||||
|
||||
mkdir import
|
||||
cd import
|
||||
|
0
contrib/git-svn/t/t0001-contrib-git-svn-props.sh → t/t9101-git-svn-props.sh
Normal file → Executable file
0
contrib/git-svn/t/t0001-contrib-git-svn-props.sh → t/t9101-git-svn-props.sh
Normal file → Executable file
0
contrib/git-svn/t/t0002-deep-rmdir.sh → t/t9102-git-svn-deep-rmdir.sh
Normal file → Executable file
0
contrib/git-svn/t/t0002-deep-rmdir.sh → t/t9102-git-svn-deep-rmdir.sh
Normal file → Executable file
0
contrib/git-svn/t/t0003-graft-branches.sh → t/t9103-git-svn-graft-branches.sh
Normal file → Executable file
0
contrib/git-svn/t/t0003-graft-branches.sh → t/t9103-git-svn-graft-branches.sh
Normal file → Executable file
0
contrib/git-svn/t/t0004-follow-parent.sh → t/t9104-git-svn-follow-parent.sh
Normal file → Executable file
0
contrib/git-svn/t/t0004-follow-parent.sh → t/t9104-git-svn-follow-parent.sh
Normal file → Executable file
0
contrib/git-svn/t/t0005-commit-diff.sh → t/t9105-git-svn-commit-diff.sh
Normal file → Executable file
0
contrib/git-svn/t/t0005-commit-diff.sh → t/t9105-git-svn-commit-diff.sh
Normal file → Executable file
Загрузка…
Ссылка в новой задаче