Merge branch 'cc/branch-test' into next

* cc/branch-test:
  Remove empty ref directories that prevent creating a ref.
  Use const for interpolate arguments
  git-archive: update documentation
This commit is contained in:
Junio C Hamano
2006-09-26 00:00:41 -07:00
6 changed files with 48 additions and 5 deletions

View File

@@ -40,6 +40,7 @@ OPTIONS
<extra>::
This can be any options that the archiver backend understand.
See next section.
--remote=<repo>::
Instead of making a tar archive from local repository,
@@ -52,6 +53,18 @@ path::
If one or more paths are specified, include only these in the
archive, otherwise include all files and subdirectories.
BACKEND EXTRA OPTIONS
---------------------
zip
~~~
-0::
Store the files instead of deflating them.
-9::
Highest and slowest compression level. You can specify any
number from 1 to 9 to adjust compression speed and ratio.
CONFIGURATION
-------------
By default, file and directories modes are set to 0666 or 0777 in tar

View File

@@ -266,6 +266,9 @@ gitlink:git-am[1]::
gitlink:git-applymbox[1]::
Apply patches from a mailbox, original version by Linus.
gitlink:git-archive[1]::
Creates an archive of files from a named tree.
gitlink:git-bisect[1]::
Find the change that introduced a bug by binary search.

View File

@@ -112,6 +112,16 @@ rev=$(git-rev-parse --verify "$head") || exit
git-check-ref-format "heads/$branchname" ||
die "we do not like '$branchname' as a branch name."
if [ -d "$GIT_DIR/refs/heads/$branchname" ]
then
for refdir in `cd "$GIT_DIR" && \
find "refs/heads/$branchname" -type d | sort -r`
do
rmdir "$GIT_DIR/$refdir" || \
die "Could not delete '$refdir', there may still be a ref there."
done
fi
if git-show-ref --verify --quiet -- "refs/heads/$branchname"
then
if test '' = "$force"

View File

@@ -25,10 +25,10 @@
*/
int interpolate(char *result, int reslen,
char *orig,
struct interp *interps, int ninterps)
const char *orig,
const struct interp *interps, int ninterps)
{
char *src = orig;
const char *src = orig;
char *dest = result;
int newlen = 0;
char *name, *value;

View File

@@ -5,6 +5,11 @@
#ifndef INTERPOLATE_H
#define INTERPOLATE_H
/*
* Convert a NUL-terminated string in buffer orig,
* performing substitutions on %-named sub-strings from
* the interpretation table.
*/
struct interp {
char *name;
@@ -12,7 +17,7 @@ struct interp {
};
extern int interpolate(char *result, int reslen,
char *orig,
struct interp *interps, int ninterps);
const char *orig,
const struct interp *interps, int ninterps);
#endif /* INTERPOLATE_H */

View File

@@ -61,4 +61,16 @@ test_expect_success \
test -f .git/logs/refs/heads/g/h/i &&
diff expect .git/logs/refs/heads/g/h/i'
test_expect_success \
'git branch j/k should work after branch j has been deleted' \
'git-branch j &&
git-branch -d j &&
git-branch j/k'
test_expect_success \
'git branch l should work after branch l/m has been deleted' \
'git-branch l/m &&
git-branch -d l/m &&
git-branch l'
test_done