summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* remote: don't say we free the remote on disconnectcmn/remote-lsCarlos Martín Nieto2014-11-191-2/+1
| | | | | On disconnect we simply ask the transport to close the connection, we do not free it.
* remote: clarify which list of references _ls() returnsCarlos Martín Nieto2014-11-192-7/+12
| | | | | Make it clear that this is not the ls-remote command but a way to access the data we have and how long it's kept around.
* Remove two completed projects from the listCarlos Martín Nieto2014-11-181-3/+0
|
* Merge pull request #2654 from linquize/missing-objEdward Thomson2014-11-188-3/+5
|\ | | | | Fix missing object in tests/resources/crlf by changing the tail commit
| * Fix missing object in tests/resources/crlf by changing the tail commitLinquize2014-10-268-3/+5
| |
* | Merge pull request #2608 from libgit2/cmn/remote-pushEdward Thomson2014-11-185-59/+214
|\ \ | | | | | | Provide a convenience function `git_remote_push()`
| * | remote: use configured push refspecs if none are givencmn/remote-pushCarlos Martín Nieto2014-11-093-8/+53
| | | | | | | | | | | | | | | If the user does not pass any refspecs to push, try to use those configured via the configuration or via add_push().
| * | push: move main test function to git_remote_push()Carlos Martín Nieto2014-11-093-59/+80
| | | | | | | | | | | | | | | | | | | | | We have the step-by-step method in the initialization function as we want to remove references based on the list of references which are already there, and we can use the convenience function for testing the main push.
| * | remote: introduce git_remote_push()Carlos Martín Nieto2014-11-093-1/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | This function, similar in style to git_remote_fetch(), performs all the steps required for a push, with a similar interface. The remote callbacks struct has learnt about the push callbacks, letting us set the callbacks a single time instead of setting some in the remote and some in the push operation.
* | | Merge pull request #2671 from swisspol/remote_create_fixEdward Thomson2014-11-172-0/+39
|\ \ \ | | | | | | | | Fixed active_refspecs field not initialized on new git_remote objects
| * | | Fixed active_refspecs field not initialized on new git_remote objectsPierre-Olivier Latour2014-11-172-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When creating a new remote, contrary to loading one from disk, active_refspecs was not populated. This means that if using the new remote to push, git_push_update_tips() will be a no-op since it checks the refspecs passed during the push against the base ones i.e. active_refspecs. And therefore the local refs won't be created or updated after the push operation.
* | | | Merge pull request #2693 from libgit2/cmn/push-refspec-refactorEdward Thomson2014-11-177-73/+45
|\ \ \ \ | | | | | | | | | | push: use the common refspec parser
| * | | | push: use the common refspec parsercmn/push-refspec-refactorCarlos Martín Nieto2014-11-097-73/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is one well-known and well-tested parser which we should use, instead of implementing parsing a second time. The common parser is also augmented to copy the LHS into the RHS if the latter is empty. The expressions test had to change a bit, as we now catch a bad RHS of a refspec locally.
* | | | | Merge pull request #2699 from swisspol/fix_warningsEdward Thomson2014-11-172-1/+4
|\ \ \ \ \ | |_|/ / / |/| | | | Fixed a couple Clang warnings
| * | | | Fixed a couple Clang warningsPierre-Olivier Latour2014-11-102-1/+4
| | |/ / | |/| |
* | | | branch: consider an empty upstream remote config as not foundCarlos Martín Nieto2014-11-172-0/+22
| | | |
* | | | Merge branch 'openssl-lock-free'Carlos Martín Nieto2014-11-171-0/+6
|\ \ \ \
| * | | | Plug possible leak in the openssl locksUngureanu Marius2014-11-171-0/+6
| | | | |
* | | | | Merge pull request #2707 from swisspol/fix_includeCarlos Martín Nieto2014-11-151-1/+2
|\ \ \ \ \ | | | | | | | | | | | | Fixed git2.h not including threads.h anymore
| * | | | | Fixed git2.h not including threads.h anymorePierre-Olivier Latour2014-11-151-1/+2
| |/ / / /
* | | | | Merge pull request #2708 from phatblat/pr/threading-docCarlos Martín Nieto2014-11-151-3/+4
|\ \ \ \ \ | |/ / / / |/| | | | Fix typo in THREADING.md
| * | | | Fix GCD typoBen Chatelain2014-11-141-3/+4
|/ / / /
* | | | Merge pull request #2653 from ethomson/contributingCarlos Martín Nieto2014-11-091-14/+40
|\ \ \ \ | | | | | | | | | | Add test information to contributing guidelines
| * | | | Add instructions on running the testsEdward Thomson2014-10-241-9/+33
| | | | |
| * | | | Fix grammar of licensing sentence, add IRC linksWaldir Pimenta2014-10-241-5/+7
| | |_|/ | |/| | | | | | | | | | Also various formatting, wrapping and capitalization tweaks.
* | | | Merge pull request #2637 from libgit2/cmn/global-initEdward Thomson2014-11-0822-67/+88
|\ \ \ \ | |_|/ / |/| | | Rename git_threads_ to git_libgit2_
| * | | Rename git_threads_ to git_libgit2_Carlos Martín Nieto2014-11-0822-67/+88
|/ / / | | | | | | | | | | | | | | | This describes their purpose better, as we now initialize ssl and some other global stuff in there. Calling the init function is not something which has been optional for a while now.
* | | Merge pull request #2673 from swisspol/2672Edward Thomson2014-11-084-19/+25
|\ \ \ | | | | | | | | Fixed GIT_REMOTE_DOWNLOAD_TAGS_ALL to behave like git 1.9.0+
| * | | Changed GIT_REMOTE_DOWNLOAD_TAGS_ALL to behave like git 1.9.0Pierre-Olivier Latour2014-11-094-19/+25
|/ / /
* | | Merge pull request #2698 from libgit2/cmn/fetchhead-refactorEdward Thomson2014-11-085-25/+90
|\ \ \ | | | | | | | | Refactor fetchhead
| * | | remote: refactor the reference-update decisioncmn/fetchhead-refactorCarlos Martín Nieto2014-11-081-26/+36
| | | | | | | | | | | | | | | | This is an ugly chunk of code, so let's put it into its own function.
| * | | remote: don't check for upstream on an anonymous remoteCarlos Martín Nieto2014-11-082-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the remote is anonymous, then we cannot check for any configuration, as there is no name. Check for this before we try to use the name, which may be a NULL pointer. This fixes #2697.
| * | | remote: use git_branch_upstream_remote()Carlos Martín Nieto2014-11-081-7/+8
| | | | | | | | | | | | | | | | | | | | This reduces the clutter somewhat and lets us see what we're asking about the reference.
| * | | branch: add getter for the upstream remote nameCarlos Martín Nieto2014-11-083-0/+43
| | | | | | | | | | | | | | | | This gets the value from branch.<foo>.remote.
* | | | Merge pull request #2695 from libgit2/cmn/remote-lookupEdward Thomson2014-11-0819-42/+45
|\ \ \ \ | | | | | | | | | | remote: rename _load() to _lookup()
| * | | | remote: rename _load() to _lookup()cmn/remote-lookupCarlos Martín Nieto2014-11-0819-42/+45
| |/ / / | | | | | | | | | | | | This brings it in line with the rest of the lookup functions.
* | | | Merge pull request #2696 from libgit2/cmn/empty-objectsEdward Thomson2014-11-082-1/+62
|\ \ \ \ | | | | | | | | | | odb: hardcode the empty blob and tree
| * | | | odb: hardcode the empty blob and treecmn/empty-objectsCarlos Martín Nieto2014-11-082-1/+62
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git hardocodes these as objects which exist regardless of whether they are in the odb and uses them in the shell interface as a way of expressing the lack of a blob or tree for one side of e.g. a diff. In the library we use each language's natural way of declaring a lack of value which makes a workaround like this unnecessary. Since git uses it, it does however mean each shell application would need to perform this check themselves. This makes it common work across a range of applications and an issue with compatibility with git, which fits right into what the library aims to provide. Thus we introduce the hard-coded empty blob and tree in the odb frontend. These hard-coded objects are checked for before going to the backends, but after the cache check, which means the second time they're used, they will be treated as normal cached objects instead of creating new ones.
* | | | Merge pull request #2694 from Therzok/statusFileEdward Thomson2014-11-084-5/+8
|\ \ \ \ | |/ / / |/| | | git_status_file now takes an exact path.
| * | | git_status_file now takes an exact pathUngureanu Marius2014-11-074-5/+8
|/ / / | | | | | | | | | | | | | | | This function has one output but can match multiple files, which can be unexpected for the user, which would usually path the exact path of the file he wants the status of.
* | | Merge pull request #2691 from libgit2/cmn/submodule-and-dirEdward Thomson2014-11-0712-31/+167
|\ \ \ | | | | | | | | submodules: stale module entries
| * | | iterator: submodules are determined by an index or treecmn/submodule-and-dirCarlos Martín Nieto2014-11-0711-31/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We cannot know from looking at .gitmodules whether a directory is a submodule or not. We need the index or tree we are comparing against to tell us. Otherwise we have to assume the entry in .gitmodules is stale or otherwise invalid. Thus we pass the index of the repository into the workdir iterator, even if we do not want to compare against it. This follows what git does, which even for `git diff <tree>`, it will consider staged submodules as such.
| * | | submodules: add failing test for stale module entriesCarlos Martín Nieto2014-11-071-0/+48
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | We consider an entry in .gitmodules to mean that we have a submodule at a particular path, even if HEAD^{tree} and the index do not contain any reference to it. We should ignore that submodule entry and simply consider that path to be a regular directory.
* | | Merge pull request #2692 from ethomson/bug2515Carlos Martín Nieto2014-11-073-64/+280
|\ \ \ | | | | | | | | checkout_index: handle other stages
| * | | checkout_index: Remove stage 0 when checking out conflictsEdward Thomson2014-11-062-13/+56
| | | |
| * | | checkout_index: remove conflicts when checking out new filesEdward Thomson2014-11-062-51/+224
|/ / /
* | | Merge pull request #2598 from libgit2/cmn/stacked-ignoreEdward Thomson2014-11-063-0/+60
|\ \ \ | | | | | | | | ignore: don't leak rules into higher directores
| * | | ignore: don't leak rules into higher directoriescmn/stacked-ignoreCarlos Martín Nieto2014-11-062-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A rule "src" in src/.gitignore must only match subdirectories of src/. The current code does not include this context in the match rule and would thus consider this rule to match the top-level src/ directory instead of the intended src/src/. Keep track fo the context in which the rule was defined so we can perform a prefix match.
| * | | ignore: add failing test for a file mentioning the parentCarlos Martín Nieto2014-11-061-0/+32
| | |/ | |/| | | | | | | | | | When we mention "src" in src/.gitignore, we wrongly consider src/ itself to be ignored.
* | | Merge pull request #2676 from libgit2/cmn/threadingEdward Thomson2014-11-064-18/+124
|\ \ \ | | | | | | | | Threading and crypto libraries