|
Packit Service |
20376f |
/*
|
|
Packit Service |
20376f |
* Copyright (C) the libgit2 contributors. All rights reserved.
|
|
Packit Service |
20376f |
*
|
|
Packit Service |
20376f |
* This file is part of libgit2, distributed under the GNU GPL v2 with
|
|
Packit Service |
20376f |
* a Linking Exception. For full terms see the included COPYING file.
|
|
Packit Service |
20376f |
*/
|
|
Packit Service |
20376f |
#ifndef INCLUDE_refspec_h__
|
|
Packit Service |
20376f |
#define INCLUDE_refspec_h__
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
#include "git2/refspec.h"
|
|
Packit Service |
20376f |
#include "buffer.h"
|
|
Packit Service |
20376f |
#include "vector.h"
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
struct git_refspec {
|
|
Packit Service |
20376f |
char *string;
|
|
Packit Service |
20376f |
char *src;
|
|
Packit Service |
20376f |
char *dst;
|
|
Packit Service |
20376f |
unsigned int force :1,
|
|
Packit Service |
20376f |
push : 1,
|
|
Packit Service |
20376f |
pattern :1,
|
|
Packit Service |
20376f |
matching :1;
|
|
Packit Service |
20376f |
};
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
#define GIT_REFSPEC_TAGS "refs/tags/*:refs/tags/*"
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
int git_refspec__parse(
|
|
Packit Service |
20376f |
struct git_refspec *refspec,
|
|
Packit Service |
20376f |
const char *str,
|
|
Packit Service |
20376f |
bool is_fetch);
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
void git_refspec__free(git_refspec *refspec);
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
int git_refspec__serialize(git_buf *out, const git_refspec *refspec);
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
/**
|
|
Packit Service |
20376f |
* Determines if a refspec is a wildcard refspec.
|
|
Packit Service |
20376f |
*
|
|
Packit Service |
20376f |
* @param spec the refspec
|
|
Packit Service |
20376f |
* @return 1 if the refspec is a wildcard, 0 otherwise
|
|
Packit Service |
20376f |
*/
|
|
Packit Service |
20376f |
int git_refspec_is_wildcard(const git_refspec *spec);
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
/**
|
|
Packit Service |
20376f |
* DWIM `spec` with `refs` existing on the remote, append the dwim'ed
|
|
Packit Service |
20376f |
* result in `out`.
|
|
Packit Service |
20376f |
*/
|
|
Packit Service |
20376f |
int git_refspec__dwim_one(git_vector *out, git_refspec *spec, git_vector *refs);
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
#endif
|