### Get Benchmark Command Line Options Source: https://github.com/couchbase/couchbase-net-client/blob/master/tests/Couchbase.LoadTests/README.md Obtain documentation for available command-line options for the benchmark runner by executing `dotnet run` with the `-?` flag. ```sh dotnet run -c Release -f netcoreapp2.1 -- -? ``` -------------------------------- ### Cloning Repositories for Code Generation Source: https://github.com/couchbase/couchbase-net-client/blob/master/src/Couchbase.Stellar.CodeGen/README.md This example demonstrates the command-line steps to clone the necessary repositories for the Couchbase.CodeGen project. Ensure the repositories are cloned adjacent to each other. ```bash $ mkdir repos $ cd repos $ git clone git@github.com:couchbase/couchbase-net-client.git $ git clone git@github.com:couchbase/protostellar.git ``` -------------------------------- ### Build Documentation with DocFX Source: https://github.com/couchbase/couchbase-net-client/blob/master/doc/CouchbaseNetClientDocs/README.txt Build the API documentation by executing the DocFX project using the .NET CLI. ```bash 2. dotnet build docfx.csproj ``` -------------------------------- ### Replace SDK Version Placeholder Source: https://github.com/couchbase/couchbase-net-client/blob/master/doc/CouchbaseNetClientDocs/README.txt Before building, replace the __CB_SDK_VERSION__ placeholder with the correct SDK version using a find/replace tool. ```bash 1. Use your favorite tool to find/replace __CB_SDK_VERSION__ with the appriopriate SDK version ``` -------------------------------- ### Run Benchmarks with Specific Filters Source: https://github.com/couchbase/couchbase-net-client/blob/master/tests/Couchbase.LoadTests/README.md Execute benchmarks using `dotnet run` with release configuration, targeting specific .NET runtimes and filtering for jobs containing 'Read'. ```sh dotnet run -c Release -f netcoreapp2.1 -- --job short --runtimes netcoreapp2.0 netcoreapp2.1 net461 --filter *Read* ``` -------------------------------- ### Locate Generated Documentation Source: https://github.com/couchbase/couchbase-net-client/blob/master/doc/CouchbaseNetClientDocs/README.txt The generated API documentation will be available in the _site folder after the build process is complete. ```bash 3. API docs are in the _site folder ``` -------------------------------- ### Clone Couchbase .NET SDK Repository Source: https://github.com/couchbase/couchbase-net-client/blob/master/CONTRIBUTING.md Clone the main repository to your local machine to begin development. ```bash $ git clone https://github.com/couchbase/couchbase-net-client.git ``` -------------------------------- ### Push Changeset to Gerrit Source: https://github.com/couchbase/couchbase-net-client/blob/master/CONTRIBUTING.md Push your single commit to Gerrit for code review. Ensure you are pushing only one commit, amending previous changes if necessary. ```bash $ git push gerrit HEAD:refs/for/master ``` -------------------------------- ### Test SSH Connection to Gerrit Source: https://github.com/couchbase/couchbase-net-client/blob/master/CONTRIBUTING.md Verify your SSH connection to the Gerrit code review system. This ensures your SSH keys are correctly configured. ```bash $ ssh review.couchbase.org ``` -------------------------------- ### Add Remote Gerrit Repository Source: https://github.com/couchbase/couchbase-net-client/blob/master/CONTRIBUTING.md Configure a remote connection to the Gerrit repository for pushing changes. Replace ${USERNAME} with your GitHub username. ```bash $ git remote add gerrit ssh://${USERNAME}@review.couchbase.org:29418/couchbase-net-client.git ``` -------------------------------- ### Interactive Rebase to Add Change-Id Source: https://github.com/couchbase/couchbase-net-client/blob/master/CONTRIBUTING.md If prior commits are missing the Change-Id header, use an interactive rebase to reword them and automatically fill in the header. ```git git rebase -i origin/master ``` -------------------------------- ### Grant Execution Permission to Commit-Msg Hook Source: https://github.com/couchbase/couchbase-net-client/blob/master/CONTRIBUTING.md Make the commit-msg hook executable by the file owner. This is necessary for the hook to run when you commit. ```bash $ chmod u+x .git/hooks/commit-msg ``` -------------------------------- ### Conditional Compilation for .NET Core 3.1+ Source: https://github.com/couchbase/couchbase-net-client/blob/master/tests/Couchbase.UnitTests/Stellar/README.md Use this conditional compilation directive to ensure code within the Couchbase.Stellar namespace only compiles on .NET Core 3.1 or greater. This prevents compilation errors on older runtimes such as .NET 4.8. ```csharp #if NETCOREAPP3_1_OR_GREATER ... #endif ``` -------------------------------- ### Disable Global Commit Signing Source: https://github.com/couchbase/couchbase-net-client/blob/master/CONTRIBUTING.md If you encounter commit errors related to signing with a different key, disable global commit signing. ```git git config commit.gpgsign false ``` -------------------------------- ### Copy Gerrit Commit-Msg Hook Source: https://github.com/couchbase/couchbase-net-client/blob/master/CONTRIBUTING.md Copy the commit-msg hook from Gerrit to your local repository's hooks directory. This hook automatically generates a Change-ID for commits, essential for Gerrit's review process. ```bash $ scp -P 29418 ${USERNAME}@review.couchbase.org:hooks/commit-msg .git/hooks ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.