* [PATCH 1/2] Add new test to show git archive autocrlf bug
@ 2008-09-21 20:25 Charles Bailey
2008-09-21 20:25 ` [PATCH 2/2] Make git respect core.autocrlf for zip archives Charles Bailey
0 siblings, 1 reply; 2+ messages in thread
From: Charles Bailey @ 2008-09-21 20:25 UTC (permalink / raw)
To: git, Junio C Hamano
Signed-off-by: Charles Bailey <charles@hashpling.org>
---
As the few responses to this patch were only positive last time around
(despite my attempt to confuse things by messing up the threading), I'm
resending for inclusion. I believe that the current behaviour is buggy,
so I hope that this patch is 'maint' worthy.
t/t0024-crlf-archive.sh | 46 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 46 insertions(+), 0 deletions(-)
create mode 100644 t/t0024-crlf-archive.sh
diff --git a/t/t0024-crlf-archive.sh b/t/t0024-crlf-archive.sh
new file mode 100644
index 0000000..3511439
--- /dev/null
+++ b/t/t0024-crlf-archive.sh
@@ -0,0 +1,46 @@
+#!/bin/sh
+
+test_description='respect crlf in git archive'
+
+. ./test-lib.sh
+UNZIP=${UNZIP:-unzip}
+
+test_expect_success setup '
+
+ git config core.autocrlf true
+
+ printf "CRLF line ending\r\nAnd another\r\n" > sample &&
+ git add sample &&
+
+ test_tick &&
+ git commit -m Initial
+
+'
+
+test_expect_success 'tar archive' '
+
+ git archive --format=tar HEAD |
+ ( mkdir untarred && cd untarred && "$TAR" -xf - )
+
+ test_cmp sample untarred/sample
+
+'
+
+"$UNZIP" -v >/dev/null 2>&1
+if [ $? -eq 127 ]; then
+ echo "Skipping ZIP test, because unzip was not found"
+ test_done
+ exit
+fi
+
+test_expect_failure 'zip archive' '
+
+ git archive --format=zip HEAD >test.zip &&
+
+ ( mkdir unzipped && cd unzipped && unzip ../test.zip ) &&
+
+ test_cmp sample unzipped/sample
+
+'
+
+test_done
--
1.6.0.1.309.g4f56
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [PATCH 2/2] Make git respect core.autocrlf for zip archives
2008-09-21 20:25 [PATCH 1/2] Add new test to show git archive autocrlf bug Charles Bailey
@ 2008-09-21 20:25 ` Charles Bailey
0 siblings, 0 replies; 2+ messages in thread
From: Charles Bailey @ 2008-09-21 20:25 UTC (permalink / raw)
To: git, Junio C Hamano
There is currently no call to git_config at the start of cmd_archive.
When creating tar archives the core config is read as a side-effect of
reading the tar specific config, but this doesn't happen for zip
archives.
The consequence is that in a configuration with core.autocrlf set,
although files in a tar archive are created with crlf line endings,
files in a zip archive retain unix line endings.
Signed-off-by: Charles Bailey <charles@hashpling.org>
---
builtin-archive.c | 2 ++
t/t0024-crlf-archive.sh | 2 +-
2 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/builtin-archive.c b/builtin-archive.c
index 5ceec43..432ce2a 100644
--- a/builtin-archive.c
+++ b/builtin-archive.c
@@ -111,6 +111,8 @@ int cmd_archive(int argc, const char **argv, const char *prefix)
{
const char *remote = NULL;
+ git_config(git_default_config, NULL);
+
remote = extract_remote_arg(&argc, argv);
if (remote)
return run_remote_archiver(remote, argc, argv);
diff --git a/t/t0024-crlf-archive.sh b/t/t0024-crlf-archive.sh
index 3511439..e533039 100644
--- a/t/t0024-crlf-archive.sh
+++ b/t/t0024-crlf-archive.sh
@@ -33,7 +33,7 @@ if [ $? -eq 127 ]; then
exit
fi
-test_expect_failure 'zip archive' '
+test_expect_success 'zip archive' '
git archive --format=zip HEAD >test.zip &&
--
1.6.0.1.309.g4f56
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2008-09-21 20:26 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-21 20:25 [PATCH 1/2] Add new test to show git archive autocrlf bug Charles Bailey
2008-09-21 20:25 ` [PATCH 2/2] Make git respect core.autocrlf for zip archives Charles Bailey
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).