[libxml2]Add libxml2 library

This commit is contained in:
zhoujiale
2026-07-26 16:57:28 +08:00
committed by zhoujiale
parent 0a44ec8a06
commit e841ac915d
3790 changed files with 668244 additions and 0 deletions
+1
View File
@@ -0,0 +1 @@
ref: refs/heads/master
+13
View File
@@ -0,0 +1,13 @@
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"]
url = https://gitlab.gnome.org/GNOME/libxml2.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
+1
View File
@@ -0,0 +1 @@
Unnamed repository; edit this file 'description' to name the repository.
@@ -0,0 +1,15 @@
#!/bin/sh
#
# An example hook script to check the commit log message taken by
# applypatch from an e-mail message.
#
# The hook should exit with non-zero status after issuing an
# appropriate message if it wants to stop the commit. The hook is
# allowed to edit the commit message file.
#
# To enable this hook, rename this file to "applypatch-msg".
. git-sh-setup
commitmsg="$(git rev-parse --git-path hooks/commit-msg)"
test -x "$commitmsg" && exec "$commitmsg" ${1+"$@"}
:
@@ -0,0 +1,74 @@
#!/bin/sh
#
# An example hook script to check the commit log message.
# Called by "git commit" with one argument, the name of the file
# that has the commit message. The hook should exit with non-zero
# status after issuing an appropriate message if it wants to stop the
# commit. The hook is allowed to edit the commit message file.
#
# To enable this hook, rename this file to "commit-msg".
# Uncomment the below to add a Signed-off-by line to the message.
# Doing this in a hook is a bad idea in general, but the prepare-commit-msg
# hook is more suited to it.
#
# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p')
# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1"
# This example catches duplicate Signed-off-by lines and messages that
# would confuse 'git am'.
ret=0
test "" = "$(grep '^Signed-off-by: ' "$1" |
sort | uniq -c | sed -e '/^[ ]*1[ ]/d')" || {
echo >&2 Duplicate Signed-off-by lines.
ret=1
}
comment_re="$(
{
git config --get-regexp "^core\.comment(char|string)\$" ||
echo '#'
} | sed -n -e '
${
s/^[^ ]* //
s|[][*./\]|\\&|g
s/^auto$/[#;@!$%^&|:]/
p
}'
)"
scissors_line="^${comment_re} -\{8,\} >8 -\{8,\}\$"
comment_line="^${comment_re}.*"
blank_line='^[ ]*$'
# Disallow lines starting with "diff -" or "Index: " in the body of the
# message. Stop looking if we see a scissors line.
line="$(sed -n -e "
# Skip comments and blank lines at the start of the file.
/${scissors_line}/q
/${comment_line}/d
/${blank_line}/d
# The first paragraph will become the subject header so
# does not need to be checked.
: subject
n
/${scissors_line}/q
/${blank_line}/!b subject
# Check the body of the message for problematic
# prefixes.
: body
n
/${scissors_line}/q
/${comment_line}/b body
/^diff -/{p;q;}
/^Index: /{p;q;}
b body
" "$1")"
if test -n "$line"
then
echo >&2 "Message contains a diff that will confuse 'git am'."
echo >&2 "To fix this indent the diff."
ret=1
fi
exit $ret
@@ -0,0 +1,168 @@
#!/usr/bin/perl
use strict;
use warnings;
use IPC::Open2;
# An example hook script to integrate Watchman
# (https://facebook.github.io/watchman/) with git to speed up detecting
# new and modified files.
#
# The hook is passed a version (currently 2) and last update token
# formatted as a string and outputs to stdout a new update token and
# all files that have been modified since the update token. Paths must
# be relative to the root of the working tree and separated by a single NUL.
#
# To enable this hook, rename this file to "query-watchman" and set
# 'git config core.fsmonitor .git/hooks/query-watchman'
#
my ($version, $last_update_token) = @ARGV;
# Uncomment for debugging
# print STDERR "$0 $version $last_update_token\n";
# Check the hook interface version
if ($version ne 2) {
die "Unsupported query-fsmonitor hook version '$version'.\n" .
"Falling back to scanning...\n";
}
my $git_work_tree = get_working_dir();
my $json_pkg;
eval {
require JSON::XS;
$json_pkg = "JSON::XS";
1;
} or do {
require JSON::PP;
$json_pkg = "JSON::PP";
};
launch_watchman();
sub launch_watchman {
my $o = watchman_query();
if (is_work_tree_watched($o)) {
output_result($o->{clock}, @{$o->{files}});
}
}
sub output_result {
my ($clockid, @files) = @_;
# Uncomment for debugging watchman output
# open (my $fh, ">", ".git/watchman-output.out");
# binmode $fh, ":utf8";
# print $fh "$clockid\n@files\n";
# close $fh;
binmode STDOUT, ":utf8";
print $clockid;
print "\0";
local $, = "\0";
print @files;
}
sub watchman_clock {
my $response = qx/watchman clock "$git_work_tree"/;
die "Failed to get clock id on '$git_work_tree'.\n" .
"Falling back to scanning...\n" if $? != 0;
return $json_pkg->new->utf8->decode($response);
}
sub watchman_query {
my $pid = open2(\*CHLD_OUT, \*CHLD_IN, 'watchman -j --no-pretty')
or die "open2() failed: $!\n" .
"Falling back to scanning...\n";
# In the query expression below we're asking for names of files that
# changed since $last_update_token but not from the .git folder.
#
# To accomplish this, we're using the "since" generator to use the
# recency index to select candidate nodes and "fields" to limit the
# output to file names only. Then we're using the "expression" term to
# further constrain the results.
my $last_update_line = "";
if (substr($last_update_token, 0, 1) eq "c") {
$last_update_token = "\"$last_update_token\"";
$last_update_line = qq[\n"since": $last_update_token,];
}
my $query = <<" END";
["query", "$git_work_tree", {$last_update_line
"fields": ["name"],
"expression": ["not", ["dirname", ".git"]]
}]
END
# Uncomment for debugging the watchman query
# open (my $fh, ">", ".git/watchman-query.json");
# print $fh $query;
# close $fh;
print CHLD_IN $query;
close CHLD_IN;
my $response = do {local $/; <CHLD_OUT>};
# Uncomment for debugging the watch response
# open ($fh, ">", ".git/watchman-response.json");
# print $fh $response;
# close $fh;
die "Watchman: command returned no output.\n" .
"Falling back to scanning...\n" if $response eq "";
die "Watchman: command returned invalid output: $response\n" .
"Falling back to scanning...\n" unless $response =~ /^\{/;
return $json_pkg->new->utf8->decode($response);
}
sub is_work_tree_watched {
my ($output) = @_;
my $error = $output->{error};
if ($error and $error =~ m/unable to resolve root .* directory (.*) is not watched/) {
my $response = qx/watchman watch "$git_work_tree"/;
die "Failed to make watchman watch '$git_work_tree'.\n" .
"Falling back to scanning...\n" if $? != 0;
$output = $json_pkg->new->utf8->decode($response);
$error = $output->{error};
die "Watchman: $error.\n" .
"Falling back to scanning...\n" if $error;
# Uncomment for debugging watchman output
# open (my $fh, ">", ".git/watchman-output.out");
# close $fh;
# Watchman will always return all files on the first query so
# return the fast "everything is dirty" flag to git and do the
# Watchman query just to get it over with now so we won't pay
# the cost in git to look up each individual file.
my $o = watchman_clock();
$error = $o->{error};
die "Watchman: $error.\n" .
"Falling back to scanning...\n" if $error;
output_result($o->{clock}, ("/"));
return 0;
}
die "Watchman: $error.\n" .
"Falling back to scanning...\n" if $error;
return 1;
}
sub get_working_dir {
my $working_dir;
if ($^O =~ 'msys' || $^O =~ 'cygwin') {
$working_dir = Win32::GetCwd();
$working_dir =~ tr/\\/\//;
} else {
require Cwd;
$working_dir = Cwd::cwd();
}
return $working_dir;
}
@@ -0,0 +1,8 @@
#!/bin/sh
#
# An example hook script to prepare a packed repository for use over
# dumb transports.
#
# To enable this hook, rename this file to "post-update".
exec git update-server-info
@@ -0,0 +1,14 @@
#!/bin/sh
#
# An example hook script to verify what is about to be committed
# by applypatch from an e-mail message.
#
# The hook should exit with non-zero status after issuing an
# appropriate message if it wants to stop the commit.
#
# To enable this hook, rename this file to "pre-applypatch".
. git-sh-setup
precommit="$(git rev-parse --git-path hooks/pre-commit)"
test -x "$precommit" && exec "$precommit" ${1+"$@"}
:
@@ -0,0 +1,49 @@
#!/bin/sh
#
# An example hook script to verify what is about to be committed.
# Called by "git commit" with no arguments. The hook should
# exit with non-zero status after issuing an appropriate message if
# it wants to stop the commit.
#
# To enable this hook, rename this file to "pre-commit".
if git rev-parse --verify HEAD >/dev/null 2>&1
then
against=HEAD
else
# Initial commit: diff against an empty tree object
against=$(git hash-object -t tree /dev/null)
fi
# If you want to allow non-ASCII filenames set this variable to true.
allownonascii=$(git config --type=bool hooks.allownonascii)
# Redirect output to stderr.
exec 1>&2
# Cross platform projects tend to avoid non-ASCII filenames; prevent
# them from being added to the repository. We exploit the fact that the
# printable range starts at the space character and ends with tilde.
if [ "$allownonascii" != "true" ] &&
# Note that the use of brackets around a tr range is ok here, (it's
# even required, for portability to Solaris 10's /usr/bin/tr), since
# the square bracket bytes happen to fall in the designated range.
test $(git diff-index --cached --name-only --diff-filter=A -z $against |
LC_ALL=C tr -d '[ -~]\0' | wc -c) != 0
then
cat <<\EOF
Error: Attempt to add a non-ASCII file name.
This can cause problems if you want to work with people on other platforms.
To be portable it is advisable to rename the file.
If you know what you are doing you can disable this check using:
git config hooks.allownonascii true
EOF
exit 1
fi
# If there are whitespace errors, print the offending file names and fail.
exec git diff-index --check --cached $against --
@@ -0,0 +1,13 @@
#!/bin/sh
#
# An example hook script to verify what is about to be committed.
# Called by "git merge" with no arguments. The hook should
# exit with non-zero status after issuing an appropriate message to
# stderr if it wants to stop the merge commit.
#
# To enable this hook, rename this file to "pre-merge-commit".
. git-sh-setup
test -x "$GIT_DIR/hooks/pre-commit" &&
exec "$GIT_DIR/hooks/pre-commit"
:
+53
View File
@@ -0,0 +1,53 @@
#!/bin/sh
# An example hook script to verify what is about to be pushed. Called by "git
# push" after it has checked the remote status, but before anything has been
# pushed. If this script exits with a non-zero status nothing will be pushed.
#
# This hook is called with the following parameters:
#
# $1 -- Name of the remote to which the push is being done
# $2 -- URL to which the push is being done
#
# If pushing without using a named remote those arguments will be equal.
#
# Information about the commits which are being pushed is supplied as lines to
# the standard input in the form:
#
# <local ref> <local oid> <remote ref> <remote oid>
#
# This sample shows how to prevent push of commits where the log message starts
# with "WIP" (work in progress).
remote="$1"
url="$2"
zero=$(git hash-object --stdin </dev/null | tr '[0-9a-f]' '0')
while read local_ref local_oid remote_ref remote_oid
do
if test "$local_oid" = "$zero"
then
# Handle delete
:
else
if test "$remote_oid" = "$zero"
then
# New branch, examine all commits
range="$local_oid"
else
# Update to existing branch, examine new commits
range="$remote_oid..$local_oid"
fi
# Check for WIP commit
commit=$(git rev-list -n 1 --grep '^WIP' "$range")
if test -n "$commit"
then
echo >&2 "Found WIP commit in $local_ref, not pushing"
exit 1
fi
fi
done
exit 0
+169
View File
@@ -0,0 +1,169 @@
#!/bin/sh
#
# Copyright (c) 2006, 2008 Junio C Hamano
#
# The "pre-rebase" hook is run just before "git rebase" starts doing
# its job, and can prevent the command from running by exiting with
# non-zero status.
#
# The hook is called with the following parameters:
#
# $1 -- the upstream the series was forked from.
# $2 -- the branch being rebased (or empty when rebasing the current branch).
#
# This sample shows how to prevent topic branches that are already
# merged to 'next' branch from getting rebased, because allowing it
# would result in rebasing already published history.
publish=next
basebranch="$1"
if test "$#" = 2
then
topic="refs/heads/$2"
else
topic=`git symbolic-ref HEAD` ||
exit 0 ;# we do not interrupt rebasing detached HEAD
fi
case "$topic" in
refs/heads/??/*)
;;
*)
exit 0 ;# we do not interrupt others.
;;
esac
# Now we are dealing with a topic branch being rebased
# on top of master. Is it OK to rebase it?
# Does the topic really exist?
git show-ref -q "$topic" || {
echo >&2 "No such branch $topic"
exit 1
}
# Is topic fully merged to master?
not_in_master=`git rev-list --pretty=oneline ^master "$topic"`
if test -z "$not_in_master"
then
echo >&2 "$topic is fully merged to master; better remove it."
exit 1 ;# we could allow it, but there is no point.
fi
# Is topic ever merged to next? If so you should not be rebasing it.
only_next_1=`git rev-list ^master "^$topic" ${publish} | sort`
only_next_2=`git rev-list ^master ${publish} | sort`
if test "$only_next_1" = "$only_next_2"
then
not_in_topic=`git rev-list "^$topic" master`
if test -z "$not_in_topic"
then
echo >&2 "$topic is already up to date with master"
exit 1 ;# we could allow it, but there is no point.
else
exit 0
fi
else
not_in_next=`git rev-list --pretty=oneline ^${publish} "$topic"`
/usr/bin/perl -e '
my $topic = $ARGV[0];
my $msg = "* $topic has commits already merged to public branch:\n";
my (%not_in_next) = map {
/^([0-9a-f]+) /;
($1 => 1);
} split(/\n/, $ARGV[1]);
for my $elem (map {
/^([0-9a-f]+) (.*)$/;
[$1 => $2];
} split(/\n/, $ARGV[2])) {
if (!exists $not_in_next{$elem->[0]}) {
if ($msg) {
print STDERR $msg;
undef $msg;
}
print STDERR " $elem->[1]\n";
}
}
' "$topic" "$not_in_next" "$not_in_master"
exit 1
fi
<<\DOC_END
This sample hook safeguards topic branches that have been
published from being rewound.
The workflow assumed here is:
* Once a topic branch forks from "master", "master" is never
merged into it again (either directly or indirectly).
* Once a topic branch is fully cooked and merged into "master",
it is deleted. If you need to build on top of it to correct
earlier mistakes, a new topic branch is created by forking at
the tip of the "master". This is not strictly necessary, but
it makes it easier to keep your history simple.
* Whenever you need to test or publish your changes to topic
branches, merge them into "next" branch.
The script, being an example, hardcodes the publish branch name
to be "next", but it is trivial to make it configurable via
$GIT_DIR/config mechanism.
With this workflow, you would want to know:
(1) ... if a topic branch has ever been merged to "next". Young
topic branches can have stupid mistakes you would rather
clean up before publishing, and things that have not been
merged into other branches can be easily rebased without
affecting other people. But once it is published, you would
not want to rewind it.
(2) ... if a topic branch has been fully merged to "master".
Then you can delete it. More importantly, you should not
build on top of it -- other people may already want to
change things related to the topic as patches against your
"master", so if you need further changes, it is better to
fork the topic (perhaps with the same name) afresh from the
tip of "master".
Let's look at this example:
o---o---o---o---o---o---o---o---o---o "next"
/ / / /
/ a---a---b A / /
/ / / /
/ / c---c---c---c B /
/ / / \ /
/ / / b---b C \ /
/ / / / \ /
---o---o---o---o---o---o---o---o---o---o---o "master"
A, B and C are topic branches.
* A has one fix since it was merged up to "next".
* B has finished. It has been fully merged up to "master" and "next",
and is ready to be deleted.
* C has not merged to "next" at all.
We would want to allow C to be rebased, refuse A, and encourage
B to be deleted.
To compute (1):
git rev-list ^master ^topic next
git rev-list ^master next
if these match, topic has not merged in next at all.
To compute (2):
git rev-list master..topic
if this is empty, it is fully merged to "master".
DOC_END
@@ -0,0 +1,24 @@
#!/bin/sh
#
# An example hook script to make use of push options.
# The example simply echoes all push options that start with 'echoback='
# and rejects all pushes when the "reject" push option is used.
#
# To enable this hook, rename this file to "pre-receive".
if test -n "$GIT_PUSH_OPTION_COUNT"
then
i=0
while test "$i" -lt "$GIT_PUSH_OPTION_COUNT"
do
eval "value=\$GIT_PUSH_OPTION_$i"
case "$value" in
echoback=*)
echo "echo from the pre-receive-hook: ${value#*=}" >&2
;;
reject)
exit 1
esac
i=$((i + 1))
done
fi
@@ -0,0 +1,42 @@
#!/bin/sh
#
# An example hook script to prepare the commit log message.
# Called by "git commit" with the name of the file that has the
# commit message, followed by the description of the commit
# message's source. The hook's purpose is to edit the commit
# message file. If the hook fails with a non-zero status,
# the commit is aborted.
#
# To enable this hook, rename this file to "prepare-commit-msg".
# This hook includes three examples. The first one removes the
# "# Please enter the commit message..." help message.
#
# The second includes the output of "git diff --name-status -r"
# into the message, just before the "git status" output. It is
# commented because it doesn't cope with --amend or with squashed
# commits.
#
# The third example adds a Signed-off-by line to the message, that can
# still be edited. This is rarely a good idea.
COMMIT_MSG_FILE=$1
COMMIT_SOURCE=$2
SHA1=$3
/usr/bin/perl -i.bak -ne 'print unless(m/^. Please enter the commit message/..m/^#$/)' "$COMMIT_MSG_FILE"
# case "$COMMIT_SOURCE,$SHA1" in
# ,|template,)
# /usr/bin/perl -i.bak -pe '
# print "\n" . `git diff --cached --name-status -r`
# if /^#/ && $first++ == 0' "$COMMIT_MSG_FILE" ;;
# *) ;;
# esac
# SOB=$(git var GIT_COMMITTER_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p')
# git interpret-trailers --in-place --trailer "$SOB" "$COMMIT_MSG_FILE"
# if test -z "$COMMIT_SOURCE"
# then
# /usr/bin/perl -i.bak -pe 'print "\n" if !$first_line++' "$COMMIT_MSG_FILE"
# fi
@@ -0,0 +1,78 @@
#!/bin/sh
# An example hook script to update a checked-out tree on a git push.
#
# This hook is invoked by git-receive-pack(1) when it reacts to git
# push and updates reference(s) in its repository, and when the push
# tries to update the branch that is currently checked out and the
# receive.denyCurrentBranch configuration variable is set to
# updateInstead.
#
# By default, such a push is refused if the working tree and the index
# of the remote repository has any difference from the currently
# checked out commit; when both the working tree and the index match
# the current commit, they are updated to match the newly pushed tip
# of the branch. This hook is to be used to override the default
# behaviour; however the code below reimplements the default behaviour
# as a starting point for convenient modification.
#
# The hook receives the commit with which the tip of the current
# branch is going to be updated:
commit=$1
# It can exit with a non-zero status to refuse the push (when it does
# so, it must not modify the index or the working tree).
die () {
echo >&2 "$*"
exit 1
}
# Or it can make any necessary changes to the working tree and to the
# index to bring them to the desired state when the tip of the current
# branch is updated to the new commit, and exit with a zero status.
#
# For example, the hook can simply run git read-tree -u -m HEAD "$1"
# in order to emulate git fetch that is run in the reverse direction
# with git push, as the two-tree form of git read-tree -u -m is
# essentially the same as git switch or git checkout that switches
# branches while keeping the local changes in the working tree that do
# not interfere with the difference between the branches.
# The below is a more-or-less exact translation to shell of the C code
# for the default behaviour for git's push-to-checkout hook defined in
# the push_to_deploy() function in builtin/receive-pack.c.
#
# Note that the hook will be executed from the repository directory,
# not from the working tree, so if you want to perform operations on
# the working tree, you will have to adapt your code accordingly, e.g.
# by adding "cd .." or using relative paths.
if ! git update-index -q --ignore-submodules --refresh
then
die "Up-to-date check failed"
fi
if ! git diff-files --quiet --ignore-submodules --
then
die "Working directory has unstaged changes"
fi
# This is a rough translation of:
#
# head_has_history() ? "HEAD" : EMPTY_TREE_SHA1_HEX
if git cat-file -e HEAD 2>/dev/null
then
head=HEAD
else
head=$(git hash-object -t tree --stdin </dev/null)
fi
if ! git diff-index --quiet --cached --ignore-submodules $head --
then
die "Working directory has staged changes"
fi
if ! git read-tree -u -m "$commit"
then
die "Could not update working tree to new HEAD"
fi
@@ -0,0 +1,77 @@
#!/bin/sh
# An example hook script to validate a patch (and/or patch series) before
# sending it via email.
#
# The hook should exit with non-zero status after issuing an appropriate
# message if it wants to prevent the email(s) from being sent.
#
# To enable this hook, rename this file to "sendemail-validate".
#
# By default, it will only check that the patch(es) can be applied on top of
# the default upstream branch without conflicts in a secondary worktree. After
# validation (successful or not) of the last patch of a series, the worktree
# will be deleted.
#
# The following config variables can be set to change the default remote and
# remote ref that are used to apply the patches against:
#
# sendemail.validateRemote (default: origin)
# sendemail.validateRemoteRef (default: HEAD)
#
# Replace the TODO placeholders with appropriate checks according to your
# needs.
validate_cover_letter () {
file="$1"
# TODO: Replace with appropriate checks (e.g. spell checking).
true
}
validate_patch () {
file="$1"
# Ensure that the patch applies without conflicts.
git am -3 "$file" || return
# TODO: Replace with appropriate checks for this patch
# (e.g. checkpatch.pl).
true
}
validate_series () {
# TODO: Replace with appropriate checks for the whole series
# (e.g. quick build, coding style checks, etc.).
true
}
# main -------------------------------------------------------------------------
if test "$GIT_SENDEMAIL_FILE_COUNTER" = 1
then
remote=$(git config --default origin --get sendemail.validateRemote) &&
ref=$(git config --default HEAD --get sendemail.validateRemoteRef) &&
worktree=$(mktemp --tmpdir -d sendemail-validate.XXXXXXX) &&
git worktree add -fd --checkout "$worktree" "refs/remotes/$remote/$ref" &&
git config --replace-all sendemail.validateWorktree "$worktree"
else
worktree=$(git config --get sendemail.validateWorktree)
fi || {
echo "sendemail-validate: error: failed to prepare worktree" >&2
exit 1
}
unset GIT_DIR GIT_WORK_TREE
cd "$worktree" &&
if grep -q "^diff --git " "$1"
then
validate_patch "$1"
else
validate_cover_letter "$1"
fi &&
if test "$GIT_SENDEMAIL_FILE_COUNTER" = "$GIT_SENDEMAIL_FILE_TOTAL"
then
git config --unset-all sendemail.validateWorktree &&
trap 'git worktree remove -ff "$worktree"' EXIT &&
validate_series
fi
+128
View File
@@ -0,0 +1,128 @@
#!/bin/sh
#
# An example hook script to block unannotated tags from entering.
# Called by "git receive-pack" with arguments: refname sha1-old sha1-new
#
# To enable this hook, rename this file to "update".
#
# Config
# ------
# hooks.allowunannotated
# This boolean sets whether unannotated tags will be allowed into the
# repository. By default they won't be.
# hooks.allowdeletetag
# This boolean sets whether deleting tags will be allowed in the
# repository. By default they won't be.
# hooks.allowmodifytag
# This boolean sets whether a tag may be modified after creation. By default
# it won't be.
# hooks.allowdeletebranch
# This boolean sets whether deleting branches will be allowed in the
# repository. By default they won't be.
# hooks.denycreatebranch
# This boolean sets whether remotely creating branches will be denied
# in the repository. By default this is allowed.
#
# --- Command line
refname="$1"
oldrev="$2"
newrev="$3"
# --- Safety check
if [ -z "$GIT_DIR" ]; then
echo "Don't run this script from the command line." >&2
echo " (if you want, you could supply GIT_DIR then run" >&2
echo " $0 <ref> <oldrev> <newrev>)" >&2
exit 1
fi
if [ -z "$refname" -o -z "$oldrev" -o -z "$newrev" ]; then
echo "usage: $0 <ref> <oldrev> <newrev>" >&2
exit 1
fi
# --- Config
allowunannotated=$(git config --type=bool hooks.allowunannotated)
allowdeletebranch=$(git config --type=bool hooks.allowdeletebranch)
denycreatebranch=$(git config --type=bool hooks.denycreatebranch)
allowdeletetag=$(git config --type=bool hooks.allowdeletetag)
allowmodifytag=$(git config --type=bool hooks.allowmodifytag)
# check for no description
projectdesc=$(sed -e '1q' "$GIT_DIR/description")
case "$projectdesc" in
"Unnamed repository"* | "")
echo "*** Project description file hasn't been set" >&2
exit 1
;;
esac
# --- Check types
# if $newrev is 0000...0000, it's a commit to delete a ref.
zero=$(git hash-object --stdin </dev/null | tr '[0-9a-f]' '0')
if [ "$newrev" = "$zero" ]; then
newrev_type=delete
else
newrev_type=$(git cat-file -t $newrev)
fi
case "$refname","$newrev_type" in
refs/tags/*,commit)
# un-annotated tag
short_refname=${refname##refs/tags/}
if [ "$allowunannotated" != "true" ]; then
echo "*** The un-annotated tag, $short_refname, is not allowed in this repository" >&2
echo "*** Use 'git tag [ -a | -s ]' for tags you want to propagate." >&2
exit 1
fi
;;
refs/tags/*,delete)
# delete tag
if [ "$allowdeletetag" != "true" ]; then
echo "*** Deleting a tag is not allowed in this repository" >&2
exit 1
fi
;;
refs/tags/*,tag)
# annotated tag
if [ "$allowmodifytag" != "true" ] && git rev-parse $refname > /dev/null 2>&1
then
echo "*** Tag '$refname' already exists." >&2
echo "*** Modifying a tag is not allowed in this repository." >&2
exit 1
fi
;;
refs/heads/*,commit)
# branch
if [ "$oldrev" = "$zero" -a "$denycreatebranch" = "true" ]; then
echo "*** Creating a branch is not allowed in this repository" >&2
exit 1
fi
;;
refs/heads/*,delete)
# delete branch
if [ "$allowdeletebranch" != "true" ]; then
echo "*** Deleting a branch is not allowed in this repository" >&2
exit 1
fi
;;
refs/remotes/*,commit)
# tracking branch
;;
refs/remotes/*,delete)
# delete tracking branch
if [ "$allowdeletebranch" != "true" ]; then
echo "*** Deleting a tracking branch is not allowed in this repository" >&2
exit 1
fi
;;
*)
# Anything else (is there anything else?)
echo "*** Update hook: unknown type of update to ref $refname of type $newrev_type" >&2
exit 1
;;
esac
# --- Finished
exit 0
Binary file not shown.
+6
View File
@@ -0,0 +1,6 @@
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
+1
View File
@@ -0,0 +1 @@
0000000000000000000000000000000000000000 ddcb79dc9934fd8a26263f6368c4eb7aa43f6d49 unknown <Administrator@PC-202504292023.(none)> 1785055843 +0800 clone: from https://gitlab.gnome.org/GNOME/libxml2.git
@@ -0,0 +1 @@
0000000000000000000000000000000000000000 ddcb79dc9934fd8a26263f6368c4eb7aa43f6d49 unknown <Administrator@PC-202504292023.(none)> 1785055843 +0800 clone: from https://gitlab.gnome.org/GNOME/libxml2.git
@@ -0,0 +1 @@
0000000000000000000000000000000000000000 ddcb79dc9934fd8a26263f6368c4eb7aa43f6d49 unknown <Administrator@PC-202504292023.(none)> 1785055843 +0800 clone: from https://gitlab.gnome.org/GNOME/libxml2.git
+491
View File
@@ -0,0 +1,491 @@
# pack-refs with: peeled fully-peeled sorted
ee0520e097d5d5eabc355041f350558fadd07492 refs/remotes/origin/2.10
0740a367a570c40246fe8077c2d172b63693f105 refs/remotes/origin/2.11
d7657811964eac1cb9743bb98649278ad948f0d2 refs/remotes/origin/2.12
04af2cabb9f859c198b8a553c028a87481199410 refs/remotes/origin/2.13
d23960a130c5bb82779c9405fbbf85e65fb3c57c refs/remotes/origin/2.14
c94eb0210183b9d7cb43f8e7fddc6be55843ef49 refs/remotes/origin/2.15
7846b0a677f8d3ce72486125fa281e92ac9970e8 refs/remotes/origin/2.9
0b348def38d88a639dae39870a23757dfdc4d4b7 refs/remotes/origin/LIB_XML_1_BRANCH
05a8ffeada05501f7a0288454e79c21203a31dd1 refs/remotes/origin/copy-entities
ddcb79dc9934fd8a26263f6368c4eb7aa43f6d49 refs/remotes/origin/master
163dc10dc51629c2ff9c027598a1a788213aadd4 refs/tags/CVE-2013-2877
^e50ba8164eee06461c73cd8abb9b46aa0be81869
fd5fad283f439e6711ac6c6cbba1e5eb4e7f9dc7 refs/tags/CVE-2014-0191
^9cd1c3cfbd32655d60572c0a413e017260c854df
e0dbd9dfe4c93a326c88b917a388d29795b5f296 refs/tags/CVE-2014-3660
^be2a7edaf289c5da74a4f9ed3a0b6c733e775230
e1f895952796c7e1e264bee4bc6bb1195d2279ab refs/tags/CVE-2015-1819
^213f1fe0d76d30eaed6e5853057defc43e6df2c9
c4c966b3841b775cd7d6719aa7fcaa0f345264e2 refs/tags/CVE-2015-5312
^69030714cde66d525a8884bda01b9e8f0abf8e1e
8f8bd7c77eba811e0566bfbe1f36a3d3837c59c2 refs/tags/CVE-2015-7497
^6360a31a84efe69d155ed96306b9a931a40beab9
b70d6d6dcf442e8769d2d290218ab75f2413e920 refs/tags/CVE-2015-7498
^afd27c21f6b36e22682b7da20d726bce2dcb2f43
ceaa9b17834d2986e93d304972e8c72380c602a8 refs/tags/CVE-2015-7499-1
^28cd9cb747a94483f4aea7f0968d202c20bb4cfc
a5ec74ac392aac86fba093ecd0136ae6245cb2d5 refs/tags/CVE-2015-7499-2
^35bcb1d758ed70aa7b257c9c3b3ff55e54e3d0da
b2a2bcfca4e09dbdc06cce57e19f14313590052e refs/tags/CVE-2015-7500
^f1063fdbe7fa66332bbb76874101c2a7b51b519f
e892062051dd4bf2f18c1388f68d3fa6207fca99 refs/tags/CVE-2015-7941_1
^a7dfab7411cbf545f359dd3157e5df1eb0e7ce31
943170f1d822aa50ae4bbf37cfef56b2116735b7 refs/tags/CVE-2015-7941_2
^9b8512337d14c8ddf662fcb98b0135f225a1c489
4bafc7d56574333a7b865eef5a1d89484e9af453 refs/tags/CVE-2015-7942
^bd0526e66a56e75a18da8c15c4750db8f801c52d
62f98ac9b842635e5874383c5cd1f91691443a9a refs/tags/CVE-2015-7942-2
^41ac9049a27f52e7a1f3b341f8714149fc88d450
c41fcb5c6e928a91dd4b29225b866baee7f687a7 refs/tags/CVE-2015-8035
^f0709e3ca8f8947f2d91ed34e92e38a4c23eae63
b27782bf51e7190816f62460bbe6d39fbba86caa refs/tags/CVE-2015-8242
^8fb4a770075628d6441fb17a1e435100e2f3b1a2
3293785cecdd5cc99a9c6d528f34826ba0868be4 refs/tags/CVE-2015-8317
^709a952110e98621c9b78c4f26462a9d8333102e
294a51cccca59b83ded6337150dafc4b35f7adb7 refs/tags/CVE-2016-1762
^a7a94612aa3b16779e2c74e1fa353b5d9786c602
158f6d9604e60f1b0b742e83082ff725f87168fa refs/tags/CVE-2016-1833
^0bcd05c5cd83dec3406c8f68b769b1d610c72f76
4a189503c845360fd6c5004a4e696ac4e69505c7 refs/tags/CVE-2016-1834
^8fbbf5513d609c1770b391b99e33314cd0742704
9cad8ce3d3e8f426bb98046b983a6ff103321d00 refs/tags/CVE-2016-1835
^38eae571111db3b43ffdeb05487c9f60551906fb
67dd1fda4bcaf457f922b2e0bb3169382ec3baf2 refs/tags/CVE-2016-1836
^45752d2c334b50016666d8f0ec3691e2d680f0a0
275b9f71a2c77fc76dec38b3e97a1d4dad497a17 refs/tags/CVE-2016-1837
^11ed4a7a90d5ce156a18980a4ad4e53e77384852
970aa35a0c96ec6dd44eb9e16b6ed7598a4c1702 refs/tags/CVE-2016-1838
^db07dd613e461df93dde7902c6505629bf0734e9
e804274a08ea2d5b7be5172dd05faeee9bb1dc7f refs/tags/CVE-2016-1839
^a820dbeac29d330bae4be05d9ecd939ad6b4aa33
bb9d3ea8b9b81bea178ef01e5e7092d40819c1ed refs/tags/CVE-2016-1840
^cbb271655cadeb8dbb258a64701d9a3a0c4835b4
82a7217b1c6eb37b9daca1dedd4c49618f0e7ac6 refs/tags/CVE-2016-3627
^bdd66182ef53fe1f7209ab6535fda56366bd7ac9
5f089881420bcd86034f3dba89935712b5491d83 refs/tags/CVE-2016-3705
^8f30bdff69edac9075f4663ce3b56b0c52d48ce6
d606f2da652964a79d86a7b920bde4e9a8863bfa refs/tags/CVE-2016-4449
^b1d34de46a11323fccffa9fadeb33be670d602f5
80dc44d75773a8f5d122ddf5e33ba7656fd43ce7 refs/tags/CVE-2016-4483
^c97750d11bb8b6f3303e7131fe526a61ac65bcfd
33c656c8cfa423aa5c0f40421b84ae3c3b523060 refs/tags/CVE-2021-3541
^8598060bacada41a0eb09d95c97744ff4e428f8e
6f67896efe30c2c748a77fa152fa318fdd31863c refs/tags/ChangeLog
^30fbd3f40eb514294b0f1a32f73db30a86c5b2e4
6278cf2922e700a5122943e4a9d3b8e0f08e599b refs/tags/EAZEL-NAUTILUS-MS-AUG07
^76234da1520f108588bbec7428f7d7f663e4b96e
58f71630e32934536da0b122e839853fcb213f00 refs/tags/FOR_GNOME_0_99_1
^8f8b4c80f6dfcc5d3985367cfd078c8b6d6e3f4b
069c04b1511d99804f72e3dcbe876001e2806984 refs/tags/GNOME_0_30
^8e0137ced4d14942286fe9ff8d423d986973795d
bcb6b9d6261a3f831ec611a433ab7e6f938dac24 refs/tags/GNOME_PRINT_0_24
^4b0755c68b0182809a7db5b6ab1478cb2767abfb
555474d5bf57162b5bbef8d11c4d1cb615a8ffe3 refs/tags/GNUMERIC_FIRST_PUBLIC_RELEASE
^8e0137ced4d14942286fe9ff8d423d986973795d
5fef2815562c67e6367f15f5aefb50c91548f85a refs/tags/LIBXML2.6.31
^216850b27ecf0a48bff5802f04760f5bdf027bfc
f4e1fc182582ff420cf8b7d2aa52b4c5085a1cd6 refs/tags/LIBXML2.6.32
^596da973eb47ae1c5fcec9e0085994a689648868
0461a0c499a6a58ad1a6732f2f76e38789b31e6b refs/tags/LIBXML2.7.0
^1572425c2774b3fef6af062b87351a0e42c3e172
2d3852c8072758184e8d1ef084cd8f2f0fc81236 refs/tags/LIBXML2.7.1
^a7036d93a0fd81c34e1d1f25b9a099454c8b8ac5
d9e71cf4744d527b6f27ef3b8f51afa8155ca924 refs/tags/LIBXML2.7.2
^7f4547cdbd76a2931553759fb433df88b8b99452
a30f67e606819120fa84931004eacb45db9e716d refs/tags/LIBXML2.7.3
^97ff9b367a6428f7703aa7938595c03ad39652e0
493ecdf13794c5c28b2cb5997932e53bd744af44 refs/tags/LIBXML2_2_4_21
^fc57b41cb14a9920fa73cbb9fa1e495047970f2b
98b6e2e0ad4133df54ea9e6ba11aec5693930a65 refs/tags/LIBXML2_2_5_0
^7b4b2f9d8fc712c49beaf75985161a130c77d13a
ae174f24106a3faee155f4ac363943e05c423547 refs/tags/LIBXML2_2_5_10
^cfba2fe0bbbdd1158666fc1090c7f48c0fdb00e1
ef1152a1bb47d73162ebb169f2187010e78853e8 refs/tags/LIBXML2_2_5_11
^b42dc2bb2d66d31d2f811ad72880b4ba655a8f58
594a62a749038ccfeddb97090526c81e92902a5f refs/tags/LIBXML2_2_5_7
^92fc02cc52326430de4d7009b177e845fb69dba0
0e641fffb721aadb23c4221b8c0cd7f5e0bb2e58 refs/tags/LIBXML2_2_5_8
^560c2a441bf27f5b9d55252a70f3d5952d9ae351
dbd8be27bbd3f3c1fd0502e3bbd6ffc43bf984f8 refs/tags/LIBXML2_2_5_9
^83ee40de7569cf3e4cb45080fc9c9cb337a1e8cd
945d471f5eae6adb42841e57f6df34d7cbf478d6 refs/tags/LIBXML2_2_5_x
^cfba2fe0bbbdd1158666fc1090c7f48c0fdb00e1
1866f526ba0d9dc85fe68d77657c42fb54579354 refs/tags/LIBXML2_2_6_1
^ceffd451992ced3747ecd7477d74e3c88d3ad681
d621edb6f28d8a91ba066b17c7eda5b5170e07a3 refs/tags/LIBXML2_2_6_11
^45cb0f41e457439d508f03a19d7a6c98d9803d9f
fadd1eaf40a8960444cc078c4193ced10756ac80 refs/tags/LIBXML2_2_6_12
^b331fffbb90064c98e4e6ec5c08bfbe8efa17ffd
1351130ccb631fc0c60a1be9d128145f3850442c refs/tags/LIBXML2_2_6_13
^d1de4a3da9e5364a37469108b932e5ad66055a5e
6e4939285c4ca104695a45d78caf29e98011f378 refs/tags/LIBXML2_2_6_14
^210818b18aec4674f43b45143f4f4eed850c9e50
6070cd3f5d98c15ee39f6b3b8d0b7fec6c6cc33c refs/tags/LIBXML2_2_6_15
^c2f83d1fad48c4483f34213dcf6935e308e0c596
deea881c69a077adbe6289f22511f116f097846a refs/tags/LIBXML2_2_6_16
^c3d7cb4e582da89a442d6da32b13950af4cf7067
31398af43568e5dd3a216f54147e83c1c8694564 refs/tags/LIBXML2_2_6_18
^57c000e33d0f970846aaa35d47a2b7faf5262032
82466b40494d537d2c050dd96ca5a8d92714f385 refs/tags/LIBXML2_2_6_19
^771971f2e5077482fce3d9c234455118f2352f73
3a1b40aba764c9319781c4535b404b95036e7470 refs/tags/LIBXML2_2_6_2
^6d373a26fff17281ac1c872adae95b14727ca959
2ff310f0463982c9ed9ec2b6fc2fc8771437c399 refs/tags/LIBXML2_2_6_20
^e4aaae2640843b4e1453f57c62a64d70faf95edb
1144760805ea47e56ce26556cccb9281db8e7e69 refs/tags/LIBXML2_2_6_21
^0bcc7f6ae97a8bd8615dfd9d3acf8188ab66580e
83f982c60e1abf40ed98a1ba242629ec6e422077 refs/tags/LIBXML2_2_6_22
^33b20b70e2b0cc036bd23909fe262f816228f305
7ccf4c8f185a87d846e48385cdaf2bc244e34344 refs/tags/LIBXML2_2_6_23
^6795260135a78da60182504a2d7efb4e3177eb57
76ae427a860d53da573126c5d3defd1fbb1ae2a4 refs/tags/LIBXML2_2_6_24
^b2f8f1de7a02900f3e62a8170618ac35bd189269
6990c2948bab125fb3216e58981be116b9af5d90 refs/tags/LIBXML2_2_6_26
^7cb3fa9d51a0a57d1e538854e4be84db82b75098
4093371c160d427494f2b459e34762ca49cad824 refs/tags/LIBXML2_2_6_27
^c8338f1a52e7712dbba5e7c2fd5f76ecf01bf14f
c23b0423f20e59dc2eeaf3913bef1c78b9404705 refs/tags/LIBXML2_2_6_28
^e61d75f11e1e061d0394db395937cd8cdad7d689
3283d0df55d21811897074b757cf32746a75f030 refs/tags/LIBXML2_2_6_29
^9049c1c50a9e2454f2b43c988c6069631d313c1e
3d508f7d89b6c069f3d730a55e01e0ddf4fdf09d refs/tags/LIBXML2_2_6_3
^c480c4ea56bbb5aad5ac991dafef5702dabb6360
bba1bb9e7ca47ca5a3e73ccecede542da47f3964 refs/tags/LIBXML2_2_6_30
^22f476e0f2f5549e0a246be62a3affba276f4b75
d3e8c95b24821db0a34332f877e2f1f4919391f0 refs/tags/LIBXML2_2_6_4
^e6e59cdf33e02648fc8f33c357accadf2a657668
e5e563aa3507fc2d1c708b8d2bfe17869cf103f4 refs/tags/LIBXML2_2_6_5
^189f46b18cf94b0c941f34138611dc56a16cc6f1
f9548bdf541a0a1261034dee1749e9ba255858f9 refs/tags/LIBXML2_2_6_6
^5c9547e4f3173e92501d735193767705eab9ac31
cd9ffc78f627bda4b38322e4994873b80711ec24 refs/tags/LIBXML2_2_6_7
^9291449d9e7ca7179a2b26182ef1ab375ff4731e
954f4c261bcf5e7b0e33076198886867b79895ee refs/tags/LIBXML2_2_6_8
^252004df14b680d40c29e2ab479660162e15431e
c292b6aeacf7a0d17f7e938e548b704d6840dd36 refs/tags/LIBXML2_2_6_9
^f70f7b2da92c10e551724fdc955c8b668e5ec0b6
d1b1f19d55e17a37afa91f87909366f4bfd01788 refs/tags/LIBXML2_6_0
^2189b59b1005976970ebadb65edbb289f9e091ff
f5210f2ab3bd0d3030d19b904421e905fcd79a03 refs/tags/LIBXML_0_99
^29fb727eb480f10010f37ca9e0b984bbd4dcae3b
6e7609f2a73f3633f6e090e27c9ce0d7420e0f6a refs/tags/LIBXML_1_5_0
^424af3912493b654c46e569b06b7cd58cb2947c9
f64eef45b0dec07ef6e69d277aeb430f8d05da47 refs/tags/LIBXML_1_8_10
^7cb7a77c30b4d64a276c43f9c446be165e5b6b1e
7872d3ee8561df9a75937b5762077c73fea74a54 refs/tags/LIBXML_1_8_10_REAL
^c0408519798f2e10497cb46e4d01b53cc7a08ce6
a05e695a83ae96dda7712fd63614714992324952 refs/tags/LIBXML_1_8_12
^73a4bfe95229a0f89ac9335a4f5f3960561d0158
42344bf524ffced12be408577a1b78095350b72a refs/tags/LIBXML_1_8_14
^146f50561fa2ad63cbf81571887b1e26101d64be
66cab196da7c222b0cb26e4de7812cb6806e1c8c refs/tags/LIBXML_1_8_16
^a1ac9b0c7a23734d77fdd9235cb385f0e8b70025
bb50ea3628cbd82f2869b5f27e2b63726277dec2 refs/tags/LIBXML_1_8_17
^ead1ea69da2cceea4018cb411971261f8952444c
09e31436c4e938f3eba2b3f726c1da83d62dcb65 refs/tags/LIBXML_1_8_5
^461a66c9428af63ee8de68fbb45deaf58c0f79fc
501e80104894e407e267da087f4a488cdc4a4163 refs/tags/LIBXML_1_8_6
^e41f2b74c53d9d97b51dfc1d20aa201e4b2c9201
b22494c4ada06e09e2aeed3be32b249291e277e2 refs/tags/LIBXML_1_8_8
^08746ae6f0fe219b8c760ff6e85bddf9f39ac1ab
7ba7b81be0b6f52564a7395d5c87e02d3b7561b2 refs/tags/LIBXML_1_8_9
^e98991955c4e6661ed1bfe8c84951ff6fd2ed1d6
8d86f6fc6a5ef306638ae0bb59bac7cbe2750886 refs/tags/LIBXML_2_0_0
^18b0ef6d41fdc3905e60fce0123f9ff5f48581da
1270f021d26d5ec3f8fba2fd932cc27fa2634518 refs/tags/LIBXML_2_1_0
^c230410eadbada15092c04f92d01068af8a19f8d
ca834ba122b807fb2ce88142385a1475de22de5e refs/tags/LIBXML_2_1_1
^663a607aa40e095a2e43a78a950a73a8ac1299dd
f8457304220ac4e34b0343d82d589ab9e1108409 refs/tags/LIBXML_2_2_1
^69f94a3b722e33fc980ee9e59a78f5ec26863d26
30a3c2d958db6a20c783cb87b2282a7911aad603 refs/tags/LIBXML_2_2_3
^04698d9e1c56467007fcbb9472e5db67cf5938f5
360a48b58ccbb9beddb707e6a0a3db237283d954 refs/tags/LIBXML_2_2_4
^3bff2b0e5d2428cff9778ae60d38476f6c58c43b
1c168bcf814a286a761f3652b4ea0ca5bcb51b30 refs/tags/LIBXML_2_2_6
^29a11cc696655f9ac841a5ca28b272e4150aafa1
2da5a07b0b3bc69c9d74b310e27e6248a66b313d refs/tags/LIBXML_2_2_7
^a4964b75003d138d4643ab03e3e116a8453f8308
7e3278760ac64a94adcacfbb1837b6e175410e58 refs/tags/LIBXML_2_2_8
^4e19074bc26bac984de1d8eb3e54a5aeee421af1
a7ed8d41e2498fca91da0fe05b2245a2dd288c67 refs/tags/LIBXML_2_3_0
^6a2e40604393375cf4c42c464a532dee0be82845
b92adf88125b7e9d3a88b58fb004fc54d73bfa2e refs/tags/LIBXML_2_3_10
^b3a182e53326cce1438bc2951372ffc1ca4eb18c
ec28ff67eb27b33d3a025d8675ed5be7373f787b refs/tags/LIBXML_2_3_11
^6d473ed349020894228f29d334cba4749f9a7cea
e8544c76a86f17d33c7e6cd62ea43b530e27e40d refs/tags/LIBXML_2_3_12
^823a77f8f9effd47b22715f66883bfd889c771ff
1aa09dd44d790f3583f000cbc4ade9ed5908a181 refs/tags/LIBXML_2_3_13
^b37ecd0e51908bc9922fa37d1ec0aaaf9dc9d8e8
a445536c5a474948ef1ac271be3f4d201fbfc298 refs/tags/LIBXML_2_3_14
^5b43fde43de0b9a507f25238ad6ff3aec7cdafb2
8accf226f0600685d5ed2127153ef5d329b572c2 refs/tags/LIBXML_2_3_2
^59a3bd3744b5e46e30ab63dc772bfe924ad81469
bf5e305a26c27f3a72a61430a49c563a972438e8 refs/tags/LIBXML_2_3_3
^b402c07ca541924d89cd6ff49f99bd1b59097278
00943a4a2de3546bf14b913378883103c023cee4 refs/tags/LIBXML_2_3_4
^e356c280069914f0052891861a55fdfaff6dcf65
72d74b776193484557d6a649685b26d22c154085 refs/tags/LIBXML_2_3_5
^c7ad7ce598261a447cfceb7837219fcd93151336
e21e54203aeef732dfa459cf4838e9040542e9d2 refs/tags/LIBXML_2_3_6
^fac26a1f9330f404a90a8f347c8d13fdf08dbba1
adbdbc4f8f746f02f38c99112864abf4cefa2278 refs/tags/LIBXML_2_3_7
^393df01cac24c7344ddcdc3b6968f893790c5e67
e3847ae4bcdb6e4e258bfa651a52dccb561018f9 refs/tags/LIBXML_2_3_8
^3bbbe6fa2a16ce1e1c1ff08725cf09857d7c0428
68fb039bfda99e6f4c2576bf70b5735914aa0e17 refs/tags/LIBXML_2_3_9
^bed7b052a318695f5e0856f12fc0c86f66472cb3
deade41e955fb930d0bc528bba8087b88e249f6a refs/tags/LIBXML_2_4_0
^09ab7e1c1c943a6ba160037208c58a0dda3fe8ec
fade9185f8862bf496e6c35f900f6eadcd453eac refs/tags/LIBXML_2_4_11
^bd9b0e8eedacd57d26bbe655d76a6bc858ab95ec
703a08b6efa6d902a8c3ba83801fe76d3c53b32a refs/tags/LIBXML_2_4_12
^ef90ba7e3b530a8eb9ed27f57f0ced139b839780
6543d5679b5ffeda3ffb311db4b4f9ef39888b24 refs/tags/LIBXML_2_4_13
^af43f63aaabf0dc4b4a070773875d0927da3d8a2
d74637c3f6dbfe3249ba01f79a0c056e6975b9b7 refs/tags/LIBXML_2_4_14
^07be19bb1e73b86bdd1014eb1d9f84cb7d08e9fa
5baae18ca7ece6da7809840dcf26c1b95ebca10c refs/tags/LIBXML_2_4_16
^5f4b5999b4eeda2ca68e6d9f54a3c534a8474b38
13ba6f67deac547beaa954065cfd2a63e4388b78 refs/tags/LIBXML_2_4_18
^34ce8bece2f22cc99d25221b77315cd008f4866b
991e738a986bd7af093489d4051d65fd6df12859 refs/tags/LIBXML_2_4_2
^9a0b3d63c152fd11e2e49a308f4f102dc6043d97
cb220ae9180fb44709c2aa1f0dbf510d49f33906 refs/tags/LIBXML_2_4_20
^a7084cd57e055ac5f768c0d2aacd1bdab952798c
2d9fad9527c5a9c902d8cd774b1307933e728f8a refs/tags/LIBXML_2_4_22
^d5e22ef5802bc1d2d730cded59a700a88abfa47a
17fb73c4b80399cf37ad2762d4ef2152b0b82995 refs/tags/LIBXML_2_4_23
^539638ba2359774d184bd87cf713c7e2afc23a8c
690c9d30526aabcf0a22e2f8bcb9bf716afa139c refs/tags/LIBXML_2_4_24
^42766c0eea0fa40c7b721fa4c9cf56b4c484b4c7
ea847274005ee18c78f93fdf3b9f4354881f71f0 refs/tags/LIBXML_2_4_25
^e16b57406a96297a6ce39e509e06511c3c8a200e
7a13ab487e54688b5f4f490e7dfa5a9457c18258 refs/tags/LIBXML_2_4_26
^4826743d1643bd01d5ceaeaf627b0d71b60beb2f
4a8a33fe201084427668e814cfd7b160c98728cd refs/tags/LIBXML_2_4_27
^dad3f680e504b25b3bfd30a411adb55b4d0efe09
3996c4428a894592c28422c18c306e551976e2ff refs/tags/LIBXML_2_4_29
^9b4bb4d07ab8f820fdc19a4fc7e8d7a39e159c66
7b7a8929f92402ae6bd73cd82823870efe22481c refs/tags/LIBXML_2_4_3
^e8f379330e16fcfae7d2737bbc22007b69cc3704
fdad8d1875fb14da9dbd6b322cfc4915c3833d33 refs/tags/LIBXML_2_4_30
^2d45f52c14fe508f003b42dca81264147a0fcabc
a5fa03e1a93ef1d8d5f79509d3000629d978dc65 refs/tags/LIBXML_2_4_4
^baa8854e4e005f7a58ee1b0aa306c978247da9a7
c94b7df0bdd68d94545575b7edf88cb797b106c3 refs/tags/LIBXML_2_4_6
^60087f30f3b4cf21de48f39181736e7d71e7a661
898487ecf5beb7047e1671aedfcb09276fc55699 refs/tags/LIBXML_2_4_7
^52dcab3999cc9c480b275bc3ddf66dbb66f92d68
6d315cb263e6b956fadf65a421061e7b20303921 refs/tags/LIBXML_2_5_1
^e2830f1e65ddef63fc74a22addfea30d97ef8d65
dae9a5a6fb8fde389d693a854e8033a14414aea3 refs/tags/LIBXML_2_5_2
^72fef16e5c05224a81425b2ada12f4147b5194be
74d430bf12c9422842cdb70f7c9191d5c70ad3d4 refs/tags/LIBXML_2_5_3
^869fb32050e8e89c0c4848087970a58df9966f51
4672f42c45796bb9c56ecabce4a4be7625a33e74 refs/tags/LIBXML_2_5_4
^17bed98106ac388a6eae80515aae6957782d6029
1d4de4b34555e0b3fca79e6a589a42901449536a refs/tags/LIBXML_2_5_5
^9adc0469d4691e798ea4ad59b84c874cdea8b38d
9ff4a158ebe9ece4bb03b4f2f77c4e35c3f58774 refs/tags/LIBXML_2_5_6
^c2d4a93d4f6ecc658e63ddc416be918318cea7a9
11fb419f2b9ddc4e661e400f3a836415ed87c75c refs/tags/LIBXML_2_6_10
^4e6fef4dab062b22d2e0386415a5218070952faa
b8d74ccc2f8da503e9526d7d03143f7402342cb8 refs/tags/LIBXML_TEST_2_0_0
^5d211f4c7a150e45a301cec55426a7ed7edb7f50
080725036cf5184d3fcc3a218b83a4801a3c56e2 refs/tags/LIB_XML_1_1
^011b63cb2034476017dde1d4ad5a6aea43b94066
cefebfc541511ae9689fe6974fbca23e3e4c3dd1 refs/tags/LIB_XML_1_3
^97fea18b7138caf76bf17d003f4985d8797d26f9
dc13fa6616f650c4883e5d4dcd60361119e50755 refs/tags/LIB_XML_1_4
^1566d3a91b50e08f8bd928da5a06d9c53a99747f
0b62127e46dd8131fe7ce0f1c1ba38d3c9393b4e refs/tags/LIB_XML_1_6_1
^d2d38e9ab3691d11755857b87d83f2322b85d93d
7b0dc286b7b99b0e7e5cc3e7a1094844544cf9b9 refs/tags/LIB_XML_1_6_2
^c08a2c6fd41773f55853c5d93a67a932c61511e9
71da3e0339adb75e12fa5dd643e85ae90c3a53d5 refs/tags/LIB_XML_1_7_0
^4ecf39f3e3e51df736cbb7bdc3d24739a786fb3b
5000182a4ff1c18fb16dfbbcce18408c9a471b5f refs/tags/LIB_XML_1_7_1
^dd6b36766fb1cc83020cc12f226452ba2d640e35
b41926302ec35da1c0009a4dcf493cc1edcd0600 refs/tags/LIB_XML_1_7_3
^ad21944c30f85761a9339fe054e1f93e176b7152
42ce4e01ec843426c961900a710d7c24edd33a0d refs/tags/LIB_XML_1_8_3
^f3a7358dcae937caacd7149d080bf275e920ba69
6b2edc001df59352a92d9e124c085b508f050ded refs/tags/LIB_XML_1_X
^76234da1520f108588bbec7428f7d7f663e4b96e
9942b0f93d22dc8e4b081f0907365616c8da976a refs/tags/PRE_MUCKUP
^4b637079f26d8f5879ed45eb18cd249cad261951
d95c7184373f24ab680fea530aed57d2775993d9 refs/tags/PRE_MUCKUP2
^4b637079f26d8f5879ed45eb18cd249cad261951
48b237e1d5e319fe7473f11037884f58931b1646 refs/tags/PRE_MUCKUP3
^4b637079f26d8f5879ed45eb18cd249cad261951
8b3ff3d64c7bef4d4e3b2c7f65013d0136ba343b refs/tags/help
^3ed155fcdf123a94ac885923a9262f250bdb3301
82936c45494bb1336b19b2cc456204ddc0d7506a refs/tags/v2.10.0
^ae383bdb74523ddaf831d7db0690173c25e483b3
3fdcf0b4150a6e8b2df3189568b810e46dcdafc5 refs/tags/v2.10.1
^d85c4a01407b75eb4005256df106d121e766a1d8
b8965a6c8994b19cf360d3f35b97c5b0399c17ca refs/tags/v2.10.2
^21b24b51608d471bb9f7c4225e23d0db2acecc52
096ae438216478f676df7ea7a8532d565132d22d refs/tags/v2.10.3
^f507d167f1755b7eaea09fb1a44d29aab828b6d1
9ddf8ecda72891d1bbe8517be1a59153e8ae944d refs/tags/v2.10.4
^223cb03a5d27b1b2393b266a8657443d046139d6
4f14180cc7066c06735cb8a4a7cc7ab1d8817a5d refs/tags/v2.11.0
^f296934ade688baab79caf1c62a82149ad78accf
777ca04136443748218d3aeca79442f103af2d4a refs/tags/v2.11.1
^ab9fea4ac0d494bcf68864e9be0574137e48a80e
752811ac559fcd72e518c144c328a6a90e66154a refs/tags/v2.11.2
^838bf42d54f94c8ff99b6e5022899a32875ed5d7
11b9961d22c1bc72e651b07c3c542e9b64d19be5 refs/tags/v2.11.3
^787ae0390a3b90a76c2c54d6a18d7f1abe888c64
be5448432faaf7b108665fb2f4336c407dcecee9 refs/tags/v2.11.4
^2e9f7860a9cb8be29eca90b7409ef0278d30ef10
0884fd4019dcca3b57be83ae15272eec10519370 refs/tags/v2.11.5
^2b998a4ffbdfea04fc6a620721abc690a15743af
2ee598b7bf849ee7ee990977fe5d17ec63f651bd refs/tags/v2.11.6
^93f0179d9d0bcd0d053d2df3e2fd382e6dac6954
8651f4757b6a6855ea322dd49af1c5a77842bf34 refs/tags/v2.11.7
^8711320065405c4bb08aaccd4bd2881450b5ce41
5ca98838f76cb3791df01b5d2cbc8cd1c40463a4 refs/tags/v2.11.8
^58a973c40ba927e5ad941789723da7c47a2d60e3
81517a021421977c185c4ebb970e372f6301a9c9 refs/tags/v2.11.9
^954e851e1d8d1f4c1dfbdf043623b3c11a1c723c
a816094b4370aebb48ed8a8015b7ef89603fdc1e refs/tags/v2.12.0
^5e9b167dce73bd6a804ab107ae4c4b95e6849597
ad035cb0a2872f8bbc2f936c25b16b4d6a0f5a23 refs/tags/v2.12.1
^f4ac9926a463ecb628f73049e4fd7ecced8fb7cf
ede4fc0a676c47c40612d26ef93b0cd973df319d refs/tags/v2.12.10
^02d577715e1951cf114ca4e9adaf5605156c4f4c
3772809730ffdc1b58f2e0474daa39d1c1823779 refs/tags/v2.12.2
^4d8fa5b292fc902268217fa0f7031e77e5437b5a
e6d5e1ca18550f26eb864e267798f1304cbb8f74 refs/tags/v2.12.3
^30d22bec03893ad646907050959bdfe9e8000146
8992d2c17dba0b1842935bc626a3108b0844e509 refs/tags/v2.12.4
^8292f361458fcffe0bff515a385be02e9d35582c
906253a1d2d6dea0bf53cd8228746a163b21f221 refs/tags/v2.12.5
^e189e9945317ad4c8603fa2300d11d11f5e2e335
583f84988ae976b2683addce4107fd4afaab66f4 refs/tags/v2.12.6
^505e2e872e767405be565aa9d47ae9d6d5677f79
87d84ef5ab9dc42e31d31a9ee5929f89b1908191 refs/tags/v2.12.7
^0b6d8130737125ba45981d54be7f15fe398ad2e0
251d8617d7768e81d00d57a6257e8668deb19285 refs/tags/v2.12.8
^83fce0a3f9ef22c90a980b03bb90cbd364d5c9ab
94175bb9217a889e0d287962e6a0a8f4b658371e refs/tags/v2.12.9
^00301f0fe8bccdb9945fb684e9bbd72449b961a5
b51780c6ba0bb92d70093935bda36ccffff66039 refs/tags/v2.13.0
^cdd2575f7fbab1d8162600f4048bc37503c80e28
5c0a632451b7442a606fbe1b2ad8e6cbb431ee97 refs/tags/v2.13.1
^48dba1e21f8f1a7d8a817eaf65831396e74b78d2
9fc170941a355569b252470e4ede6846b9d8074d refs/tags/v2.13.2
^4b3f860e5420ade19a825dc7f4d75789489535ba
72c519a5220e5ed2d50d3092ad32264c58f6b021 refs/tags/v2.13.3
^3b1742b8391e966be780bdc43fdf959f7b3a118c
5d08d498f89e857756978ce092b7e4af2b74c62b refs/tags/v2.13.4
^60d3056c97067e6cb2125284878ed7c99c90ed81
912cb0a6552b5dd099e283a234447208638c2209 refs/tags/v2.13.5
^de918d45e1b2276a28a4cd32bcf556bef65284e4
8e7a3f7643aeb3f00c5d8480cfd9907e218f253a refs/tags/v2.13.6
^66453240c94b5cbd3e9ae9b32016fdafb13cdf18
92013f5e380c7027f89002d1fa150a656bb5cb66 refs/tags/v2.13.7
^9b8fbe99ad14fe32c5dd5913743046d80cf347fe
c1a40ead7b592be7112cd1a9e60cc7d31bf4b595 refs/tags/v2.13.8
^eb0a2f2b91566384f378d870ffcd69c0a24162cc
01d801ed453402320ca67f28bd7b71ca07d473d9 refs/tags/v2.13.9
^04af2cabb9f859c198b8a553c028a87481199410
8f31df3715c794325282f91e06836808ec0e3e25 refs/tags/v2.14.0
^a372cbf5821302ebaf757235b29ba812df78204d
103391ea91479da9b918448dc707001b3114a2bb refs/tags/v2.14.1
^0f10a05d2e1043dcc178736b82277223a76eacc9
718a140a367cb89192587d3dc80bf389f5aca531 refs/tags/v2.14.2
^0e145ae4881c2a05ae00128a3bd90d76d4dadc4b
514a3a41e7e273fb5642cde2dbd53a76e4aebf63 refs/tags/v2.14.3
^8d509f483dd5ce268b2fded9c738132c47d820d8
2f93c7b32890525107153c8920398058d33f17b4 refs/tags/v2.14.4
^4c6b2c3096b1da0d0780fe0b4f147e837140468d
97bd75ab83e6c2c2596cc520abe80d6779e4a69c refs/tags/v2.14.5
^74f3154320df8950eceae4951975cc9dfc3a254d
20f532eb52155e0657858712823f5908d1022a6d refs/tags/v2.14.6
^d23960a130c5bb82779c9405fbbf85e65fb3c57c
1b21b6c77bc1860e1a2b732bd2d9bff304d112c3 refs/tags/v2.15.0
^0bea77c8289324483c0504d36ac730bb03f6a70b
c36a6d572993da7e72a95fc8d6bbe4d371b57a72 refs/tags/v2.15.1
^b7fa62cbe8ef0df5869e000d5b690bdedd07f33e
580f6350dcb08d07723069c8a0163b9f7961eb84 refs/tags/v2.15.2
^3d840e17858de03a09fba8b202e3a89267d5795a
5e0a659ebe62aec93c518135d669404e108c7593 refs/tags/v2.15.3
^c94eb0210183b9d7cb43f8e7fddc6be55843ef49
32c00ab1f275a5cb405984b9d05074f0220c51b2 refs/tags/v2.7.4
^293416828e1467f877d9dd928f174dcf81b103bc
16d832067a0cd91c872bddcbaaa333ecfde4e21f refs/tags/v2.7.5
^7a896ce260d2447d405b4ae683bf9d643eef6cda
09722218f6b34cf7956b9d783b6c4c22245ae0cf refs/tags/v2.7.6
^96bb740e2102f103777f0a630d29ba88996dd80c
d87cd23dc35db8e3740278437b9788e04842ee8a refs/tags/v2.7.7
^bb5055f3875c5a3c45f4daa8058e35aab8c5ac3f
dfb55d16be9160f47c2d975787c51e542317bf98 refs/tags/v2.7.8
^4c2e7c651f6c2f0d1a74f350cbda95f7df3e7017
60f2ea93af9cf5fb703619b1f70b6efe44e72a68 refs/tags/v2.8.0
^c943f708f1853de4eb15e5a94cf0b35d108da87a
33ea7b311ab9ef2876f6f637d9d3070168097d6d refs/tags/v2.8.0-rc1
^9d9685ad88c17d35b6688695af3ceba7c7309b13
873af1e595d9d38161713173abe886c2f964ecf3 refs/tags/v2.8.0-rc2
^ee8f1d4cda8dc1a6f2c515fe234f7bc89cdc9f80
64ff9c0b6c1428b22139e96e9c8a6073cb13621c refs/tags/v2.9.0
^38bbd3412d1c2a2016cf5a1a221ad4010216d28e
68dbd0731a531c518af3119fd28fd76d358cb0fe refs/tags/v2.9.0-rc2
^f933c898132f20a50ba39ac6116378b71a01c700
3c5a219589cd29e14cc98ff3888782f3b4d44fc1 refs/tags/v2.9.1
^f4e5a6994ed230dfa3fb5b5c3fd94c4993ef1ba7
f1840421fcb591dac8da7ca337687f9901e7a6f2 refs/tags/v2.9.10
^41a34e1f4ffae2ce401600dbb5fe43f8fe402641
bf8ef642e5628ae14d6e08af901266ddea34e397 refs/tags/v2.9.10-rc1
^9acef289285008f81b4b66b4880baf600773cf67
45d730733714c9845dc9dc703dac896c6e8ee778 refs/tags/v2.9.11
^e1bcffea180d6cc0651757bb64284a763e0e2239
adf8e7ce9659c5d7e8401b1962fdbd3183413970 refs/tags/v2.9.12
^b48e77cf4f6fa0792c5f4b639707a2b0675e461b
0d2678b55df8165c9957d727f65ea7bc5db45394 refs/tags/v2.9.13
^a075d256fd9ff15590b86d981b75a50ead124fca
bd61cd3e2641f73dfeb1477cc96f4fce66695441 refs/tags/v2.9.14
^7846b0a677f8d3ce72486125fa281e92ac9970e8
1981966910ce8b9fccbe2d389539cc9d4a0f2b8b refs/tags/v2.9.2
^726f67e2f140f8d936dfe993bf9ded3180d750d2
a0be0ee781ee75068ed09e3689cedb86bb3fc6f8 refs/tags/v2.9.2-rc1
^f985ada79027570d5e3f0d1b29c8ecf23921044a
a7ee9ac2c9501a0bc19fecc79835e88ee3a0fb8b refs/tags/v2.9.2-rc2
^af62eb4fabda119f12c53da2e68cf0decb68b0d8
9393796f3d9fe9c3695bb04d04c4d63115201dc1 refs/tags/v2.9.3
^6657afe83a38278f124ace71dc85f60420beb2d5
56a6e1aebed937941d2960cc5012665a5ca0115e refs/tags/v2.9.4
^bdec2183f34b37ee89ae1d330c6ad2bb4d76605f
497393910ff3b586deaa497bc4a2e9f26eb0bdc0 refs/tags/v2.9.4-rc1
^a1dca81df7c352cd9a14ab678750b1623f8f8ed7
c1cda08208d5d5f5799e08a0b94dec639b99afe8 refs/tags/v2.9.4-rc2
^8effcb578e0590cc01bbcab0f9dccefc6bdbcdbd
f3ec1e3f525ac665f35d5f08013b30b9988cd2ad refs/tags/v2.9.5
^2960178fe8f9fe690b7f8c1c49093ff54bb56934
aecbb680b62a451695faa0058125c036eda308f9 refs/tags/v2.9.5-rc1
^e29e50e54f471c7019059e5358b2739442266246
ac79e63dc73782adf84b7cac4ea4884cf8082652 refs/tags/v2.9.5-rc2
^69936b129fedcda3514fee1a0d6b39521923cbac
60937cf0a9bf4f7c2e85fde7311d2faa9509a3b2 refs/tags/v2.9.6
^4b4d3d85165e6bfca23893cf98834c4bc747a96c
088e58814aab32e5a52fff33e5b8b5cc28988a0b refs/tags/v2.9.6-rc1
^0f3b843b3534784ef57a4f9b874238aa1fda5a73
6b6c944506736ab8c1e026b0bc7dcf39f5dedd17 refs/tags/v2.9.7
^bc5a5d658320c37e206fe4e7b525b4a24466d0c6
8bb75f1fd0d7060127851da63330e5a7805f01ae refs/tags/v2.9.7-rc1
^09f51ecbc5b8ea418bacca4ad43a4d2d1e3ccdfb
8b595673b8fcb5d5769e38bb40fde00ac8ddba0b refs/tags/v2.9.8
^18890f471c420411aa3c989e104d090966ec9dbf
d6d2d9a1413638f2c98a5404665e8071917ae3d0 refs/tags/v2.9.8-rc1
^ab362ab0ad3af54406ae8237a525405c6e2a705b
e555d28c1c16469b396d44827c1b8e2d59bf92bc refs/tags/v2.9.9
^f8a8c1f59db355b46962577e7b74f1a1e8149dc6
11a505b2d5d3778c39759e1a16c5a58546a2a058 refs/tags/v2.9.9-rc1
^c8e5f9588b986c6e81c9028825aeff8151375d28
f67b2a86b67d8fcadc1b9f25ae3cebbfdb0c9cb6 refs/tags/v2.9.9-rc2
^a71b98ec9dee2d44e16a74ab8472868891bbc7b4
+1
View File
@@ -0,0 +1 @@
ddcb79dc9934fd8a26263f6368c4eb7aa43f6d49
@@ -0,0 +1 @@
ref: refs/remotes/origin/master