summaryrefslogtreecommitdiff
path: root/doc/topics/git
diff options
context:
space:
mode:
Diffstat (limited to 'doc/topics/git')
-rw-r--r--doc/topics/git/bisect.md79
-rw-r--r--doc/topics/git/cherry_picking.md1
-rw-r--r--doc/topics/git/feature_branch_development.md11
-rw-r--r--doc/topics/git/feature_branching.md34
-rw-r--r--doc/topics/git/getting_started.md11
-rw-r--r--doc/topics/git/git_add.md1
-rw-r--r--doc/topics/git/git_log.md63
-rw-r--r--doc/topics/git/git_rebase.md3
-rw-r--r--doc/topics/git/index.md15
-rw-r--r--doc/topics/git/lfs/index.md5
-rw-r--r--doc/topics/git/lfs/migrate_to_git_lfs.md4
-rw-r--r--doc/topics/git/merge_conflicts.md11
-rw-r--r--doc/topics/git/partial_clone.md4
-rw-r--r--doc/topics/git/rollback_commits.md1
-rw-r--r--doc/topics/git/stash.md1
-rw-r--r--doc/topics/git/subtree.md53
-rw-r--r--doc/topics/git/tags.md44
-rw-r--r--doc/topics/git/terminology.md6
-rw-r--r--doc/topics/git/troubleshooting_git.md122
-rw-r--r--doc/topics/git/unstage.md15
-rw-r--r--doc/topics/git/useful_git_commands.md6
21 files changed, 173 insertions, 317 deletions
diff --git a/doc/topics/git/bisect.md b/doc/topics/git/bisect.md
index a7f8b2a846c..eaf619ce36f 100644
--- a/doc/topics/git/bisect.md
+++ b/doc/topics/git/bisect.md
@@ -1,76 +1,11 @@
---
-stage: Create
-group: Source Code
-info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
-comments: false
+redirect_to: 'index.md'
+remove_date: '2023-06-09'
---
-# Bisect **(FREE)**
+This document was moved to [another location](index.md).
-- Find a commit that introduced a bug
-- Works through a process of elimination
-- Specify a known good and bad revision to begin
-
-## Bisect sample workflow
-
-1. Start the bisect process
-1. Enter the bad revision (usually latest commit)
-1. Enter a known good revision (commit/branch)
-1. Run code to see if bug still exists
-1. Tell bisect the result
-1. Repeat the previous 2 items until you find the offending commit
-
-## Setup
-
-```shell
- mkdir bisect-ex
- cd bisect-ex
- touch index.html
- git add -A
- git commit -m "starting out"
- vi index.html
- # Add all good
- git add -A
- git commit -m "second commit"
- vi index.html
- # Add all good 2
- git add -A
- git commit -m "third commit"
- vi index.html
-```
-
-```shell
- # Add all good 3
- git add -A
- git commit -m "fourth commit"
- vi index.html
- # This looks bad
- git add -A
- git commit -m "fifth commit"
- vi index.html
- # Really bad
- git add -A
- git commit -m "sixth commit"
- vi index.html
- # again just bad
- git add -A
- git commit -m "seventh commit"
-```
-
-## Commands
-
-```shell
- git bisect start
- # Test your code
- git bisect bad
- git bisect next
- # Say yes to the warning
- # Test
- git bisect good
- # Test
- git bisect bad
- # Test
- git bisect good
- # done
- git bisect reset
-```
+<!-- This redirect file can be deleted after <2023-06-09>. -->
+<!-- Redirects that point to other docs in the same project expire in three months. -->
+<!-- Redirects that point to docs in a different project or site (for example, link is not relative and starts with `https:`) expire in one year. -->
+<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/redirects.html -->
diff --git a/doc/topics/git/cherry_picking.md b/doc/topics/git/cherry_picking.md
index ce2a1d4b954..bd589562ed1 100644
--- a/doc/topics/git/cherry_picking.md
+++ b/doc/topics/git/cherry_picking.md
@@ -2,7 +2,6 @@
stage: Create
group: Source Code
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
-comments: false
---
# Cherry-pick a Git commit **(FREE)**
diff --git a/doc/topics/git/feature_branch_development.md b/doc/topics/git/feature_branch_development.md
deleted file mode 100644
index 4125d8e8fdb..00000000000
--- a/doc/topics/git/feature_branch_development.md
+++ /dev/null
@@ -1,11 +0,0 @@
----
-redirect_to: 'index.md'
-remove_date: '2023-03-31'
----
-
-This document was moved to [another location](index.md).
-
-<!-- This redirect file can be deleted after <2023-03-31>. -->
-<!-- Redirects that point to other docs in the same project expire in three months. -->
-<!-- Redirects that point to docs in a different project or site (for example, link is not relative and starts with `https:`) expire in one year. -->
-<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/redirects.html -->
diff --git a/doc/topics/git/feature_branching.md b/doc/topics/git/feature_branching.md
index 73de351fde2..eaf619ce36f 100644
--- a/doc/topics/git/feature_branching.md
+++ b/doc/topics/git/feature_branching.md
@@ -1,31 +1,11 @@
---
-stage: Create
-group: Source Code
-info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
-comments: false
+redirect_to: 'index.md'
+remove_date: '2023-06-09'
---
-# Feature branching **(FREE)**
+This document was moved to [another location](index.md).
-- Efficient parallel workflow for teams
-- Develop each feature in a branch
-- Keeps changes isolated
-- Consider a 1-to-1 link to issues
-- Push branches to the server frequently
- - Hint: Pushing branches is a cheap backup for your work-in-progress code.
-
-## Feature branching sample workflow
-
-1. Create a new feature branch called `squash_some_bugs`
-1. Edit '`bugs.rb`' and remove all the bugs.
-1. Commit
-1. Push
-
-```shell
-git checkout -b squash_some_bugs
-# Edit `bugs.rb`
-git status
-git add bugs.rb
-git commit -m 'Fix some buggy code'
-git push origin squash_some_bugs
-```
+<!-- This redirect file can be deleted after <2023-06-09>. -->
+<!-- Redirects that point to other docs in the same project expire in three months. -->
+<!-- Redirects that point to docs in a different project or site (for example, link is not relative and starts with `https:`) expire in one year. -->
+<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/redirects.html -->
diff --git a/doc/topics/git/getting_started.md b/doc/topics/git/getting_started.md
deleted file mode 100644
index 790fd3aa6c0..00000000000
--- a/doc/topics/git/getting_started.md
+++ /dev/null
@@ -1,11 +0,0 @@
----
-redirect_to: '../../tutorials/make_your_first_git_commit.md'
-remove_date: '2023-04-23'
----
-
-This document was moved to [another location](../../tutorials/make_your_first_git_commit.md).
-
-<!-- This redirect file can be deleted after <2023-04-23>. -->
-<!-- Redirects that point to other docs in the same project expire in three months. -->
-<!-- Redirects that point to docs in a different project or site (for example, link is not relative and starts with `https:`) expire in one year. -->
-<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/redirects.html -->
diff --git a/doc/topics/git/git_add.md b/doc/topics/git/git_add.md
index 722701dbb49..1089202bbd3 100644
--- a/doc/topics/git/git_add.md
+++ b/doc/topics/git/git_add.md
@@ -2,7 +2,6 @@
stage: Create
group: Source Code
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
-comments: false
---
# Git add **(FREE)**
diff --git a/doc/topics/git/git_log.md b/doc/topics/git/git_log.md
index e2e9c0e8804..eaf619ce36f 100644
--- a/doc/topics/git/git_log.md
+++ b/doc/topics/git/git_log.md
@@ -1,60 +1,11 @@
---
-stage: Create
-group: Source Code
-info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
-comments: false
+redirect_to: 'index.md'
+remove_date: '2023-06-09'
---
-# Git Log **(FREE)**
+This document was moved to [another location](index.md).
-Git log lists commit history. It allows searching and filtering.
-
-- Initiate log:
-
- ```shell
- git log
- ```
-
-- Retrieve set number of records:
-
- ```shell
- git log -n 2
- ```
-
-- Search commits by author. Allows user name or a regular expression.
-
- ```shell
- git log --author="user_name"
- ```
-
-- Search by comment message:
-
- ```shell
- git log --grep="<pattern>"
- ```
-
-- Search by date:
-
- ```shell
- git log --since=1.month.ago --until=3.weeks.ago
- ```
-
-## Git Log Workflow
-
-1. Change to workspace directory
-1. Clone the multi runner projects
-1. Change to project dir
-1. Search by author
-1. Search by date
-1. Combine
-
-## Commands
-
-```shell
-cd ~/workspace
-git clone git@gitlab.com:gitlab-org/gitlab-runner.git
-cd gitlab-runner
-git log --author="Travis"
-git log --since=1.month.ago --until=3.weeks.ago
-git log --since=1.month.ago --until=1.day.ago --author="Travis"
-```
+<!-- This redirect file can be deleted after <2023-06-09>. -->
+<!-- Redirects that point to other docs in the same project expire in three months. -->
+<!-- Redirects that point to docs in a different project or site (for example, link is not relative and starts with `https:`) expire in one year. -->
+<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/redirects.html -->
diff --git a/doc/topics/git/git_rebase.md b/doc/topics/git/git_rebase.md
index ec28d0b6431..bc9337481d4 100644
--- a/doc/topics/git/git_rebase.md
+++ b/doc/topics/git/git_rebase.md
@@ -226,5 +226,4 @@ git push --force origin my-feature
## Related topics
- [Numerous undo possibilities in Git](numerous_undo_possibilities_in_git/index.md#undo-staged-local-changes-without-modifying-history)
-for a deeper look into interactive rebases.
-- [Git documentation for branches and rebases](https://git-scm.com/book/en/v2/Git-Branching-Rebasing).
+- [Git documentation for branches and rebases](https://git-scm.com/book/en/v2/Git-Branching-Rebasing)
diff --git a/doc/topics/git/index.md b/doc/topics/git/index.md
index b47a34fa7b2..d5aa74935f2 100644
--- a/doc/topics/git/index.md
+++ b/doc/topics/git/index.md
@@ -26,13 +26,12 @@ The following resources can help you get started with Git:
- [Git-ing started with Git](https://www.youtube.com/watch?v=Ce5nz5n41z4),
a video introduction to Git.
-- [Make your first Git commit](../../tutorials/make_your_first_git_commit.md)
+- [Make your first Git commit](../../tutorials/make_first_git_commit/index.md)
- [Git Basics](https://git-scm.com/book/en/v2/Getting-Started-Git-Basics)
- [Git on the Server - GitLab](https://git-scm.com/book/en/v2/Git-on-the-Server-GitLab)
- [How to install Git](how_to_install_git/index.md)
-- [Git terminology](terminology.md)
+- [Git concepts](terminology.md)
- [Start using Git on the command line](../../gitlab-basics/start-using-git.md)
-- [Edit files through the command line](../../gitlab-basics/command-line-commands.md)
- [GitLab Git Cheat Sheet (download)](https://about.gitlab.com/images/press/git-cheat-sheet.pdf)
- Commits:
- [Revert a commit](../../user/project/merge_requests/revert_changes.md#revert-a-commit)
@@ -43,7 +42,7 @@ The following resources can help you get started with Git:
- [Git stash](stash.md)
- [Git file blame](../../user/project/repository/git_blame.md)
- [Git file history](../../user/project/repository/git_history.md)
-- [Git tags](tags.md)
+- [Git tags](../../user/project/repository/tags/index.md)
### Concepts
@@ -58,16 +57,11 @@ The following are resources on version control concepts:
You can do many Git tasks from the command line:
-- [Bisect](bisect.md).
- [Cherry-pick](cherry_picking.md).
-- [Feature branching](feature_branching.md).
-- [Getting started with Git](getting_started.md).
+- [Getting started with Git](../../tutorials/make_first_git_commit/index.md).
- [Git add](git_add.md).
-- [Git log](git_log.md).
- [Git stash](stash.md).
-- [Merge conflicts](merge_conflicts.md).
- [Rollback commits](rollback_commits.md).
-- [Subtree](subtree.md).
- [Unstage](unstage.md).
## Git tips
@@ -88,7 +82,6 @@ If you have problems with Git, the following may help:
## Branching strategies
- [Feature branch workflow](../../gitlab-basics/feature_branch_workflow.md)
-- [Develop on a feature branch](feature_branch_development.md)
- [GitLab Flow](../gitlab_flow.md)
- [Git Branching - Branches in a Nutshell](https://git-scm.com/book/en/v2/Git-Branching-Branches-in-a-Nutshell)
- [Git Branching - Branching Workflows](https://git-scm.com/book/en/v2/Git-Branching-Branching-Workflows)
diff --git a/doc/topics/git/lfs/index.md b/doc/topics/git/lfs/index.md
index cac203ffac0..4f0d1bfc5e6 100644
--- a/doc/topics/git/lfs/index.md
+++ b/doc/topics/git/lfs/index.md
@@ -3,7 +3,6 @@ stage: Create
group: Source Code
info: "To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments"
type: reference, howto
-disqus_identifier: 'https://docs.gitlab.com/ee/workflow/lfs/lfs/index.html'
---
# Git Large File Storage (LFS) **(FREE)**
@@ -27,10 +26,10 @@ instructions from where to fetch or where to push the large file.
Documentation for GitLab instance administrators is under [LFS administration doc](../../../administration/lfs/index.md).
-## Requirements
+## Prerequisites
- Git LFS must be [enabled in project settings](../../../user/project/settings/index.md#configure-project-visibility-features-and-permissions).
-- [Git LFS client](https://git-lfs.com/) version 1.0.1 or higher must be installed.
+- [Git LFS client](https://git-lfs.com/) version 1.0.1 or later must be installed.
## Known limitations
diff --git a/doc/topics/git/lfs/migrate_to_git_lfs.md b/doc/topics/git/lfs/migrate_to_git_lfs.md
index 07c89e52653..d14d0db6087 100644
--- a/doc/topics/git/lfs/migrate_to_git_lfs.md
+++ b/doc/topics/git/lfs/migrate_to_git_lfs.md
@@ -35,7 +35,7 @@ The method described on this guide rewrites Git history. Make
sure to back up your repository before beginning and use it at your
own risk.
-## Requirements
+## Prerequisites
Before beginning, make sure:
@@ -161,7 +161,7 @@ Consider an example upstream project, `git@gitlab.com:gitlab-tests/test-git-lfs-
expand **Protected branches**.
1. Select the default branch from the **Branch** dropdown list,
and set up the
- **Allowed to push** and **Allowed to merge** rules.
+ **Allowed to push and merge** and **Allowed to merge** rules.
1. Select **Protect**.
<!-- ## Troubleshooting
diff --git a/doc/topics/git/merge_conflicts.md b/doc/topics/git/merge_conflicts.md
deleted file mode 100644
index ea37afe1b31..00000000000
--- a/doc/topics/git/merge_conflicts.md
+++ /dev/null
@@ -1,11 +0,0 @@
----
-redirect_to: '../../user/project/merge_requests/conflicts.md#resolve-conflicts-from-the-command-line'
-remove_date: '2023-02-01'
----
-
-This document was moved to [another location](../../user/project/merge_requests/conflicts.md#resolve-conflicts-from-the-command-line).
-
-<!-- This redirect file can be deleted after <2023-02-01>. -->
-<!-- Redirects that point to other docs in the same project expire in three months. -->
-<!-- Redirects that point to docs in a different project or site (for example, link is not relative and starts with `https:`) expire in one year. -->
-<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/redirects.html -->
diff --git a/doc/topics/git/partial_clone.md b/doc/topics/git/partial_clone.md
index f5f11b17675..de0547ae49d 100644
--- a/doc/topics/git/partial_clone.md
+++ b/doc/topics/git/partial_clone.md
@@ -94,9 +94,7 @@ Updating files: 100% (28/28), done.
$ cd www-gitlab-com
-$ git sparse-checkout init --cone
-
-$ git sparse-checkout add data
+$ git sparse-checkout set data --cone
remote: Enumerating objects: 301, done.
remote: Counting objects: 100% (301/301), done.
remote: Compressing objects: 100% (292/292), done.
diff --git a/doc/topics/git/rollback_commits.md b/doc/topics/git/rollback_commits.md
index 56d740f3d1b..d1f34c7cf9c 100644
--- a/doc/topics/git/rollback_commits.md
+++ b/doc/topics/git/rollback_commits.md
@@ -2,7 +2,6 @@
stage: Create
group: Source Code
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
-comments: false
---
# Roll back commits **(FREE)**
diff --git a/doc/topics/git/stash.md b/doc/topics/git/stash.md
index ee931bbbb7c..9f621308a1d 100644
--- a/doc/topics/git/stash.md
+++ b/doc/topics/git/stash.md
@@ -2,7 +2,6 @@
stage: Create
group: Source Code
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
-comments: false
---
# Git stash **(FREE)**
diff --git a/doc/topics/git/subtree.md b/doc/topics/git/subtree.md
index a8a665d4e13..eaf619ce36f 100644
--- a/doc/topics/git/subtree.md
+++ b/doc/topics/git/subtree.md
@@ -1,50 +1,11 @@
---
-stage: Create
-group: Source Code
-info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
-comments: false
+redirect_to: 'index.md'
+remove_date: '2023-06-09'
---
-# Subtree **(FREE)**
+This document was moved to [another location](index.md).
-- Used when there are nested repositories.
-- Not recommended when the amount of dependencies is too large.
-- For these cases we need a dependency control system.
-- Command are painfully long so aliases are necessary.
-
-## Subtree Aliases
-
-- Add: `git subtree add --prefix <target-folder> <url> <branch> --squash`
-- Pull: `git subtree pull --prefix <target-folder> <url> <branch> --squash`
-- Push: `git subtree push --prefix <target-folder> <url> <branch>`
-
-```shell
- # Add an alias
- # Add
- git config alias.sba 'subtree add --prefix st /
- git@gitlab.com:balameb/subtree-nested-example.git master --squash'
- # Pull
- git config alias.sbpl 'subtree pull --prefix st /
- git@gitlab.com:balameb/subtree-nested-example.git master --squash'
- # Push
- git config alias.sbph 'subtree push --prefix st /
- git@gitlab.com:balameb/subtree-nested-example.git master'
-
- # Adding this subtree adds a st dir with a readme
- git sba
- vi st/README.md
- # Edit file
- git status shows differences
-
-```
-
-```shell
- # Adding, or committing won't change the sub repo at remote
- # even if we push
- git add -A
- git commit -m "Adding to subtree readme"
-
- # Push to subtree repo
- git sbph
- # now we can check our remote sub repo
-```
+<!-- This redirect file can be deleted after <2023-06-09>. -->
+<!-- Redirects that point to other docs in the same project expire in three months. -->
+<!-- Redirects that point to docs in a different project or site (for example, link is not relative and starts with `https:`) expire in one year. -->
+<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/redirects.html -->
diff --git a/doc/topics/git/tags.md b/doc/topics/git/tags.md
index ab196f409f7..c66c97717f2 100644
--- a/doc/topics/git/tags.md
+++ b/doc/topics/git/tags.md
@@ -1,41 +1,11 @@
---
-stage: Create
-group: Source Code
-info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
+redirect_to: '../../user/project/repository/tags/index.md'
+remove_date: '2023-05-27'
---
-# Tags **(FREE)**
+This document was moved to [another location](../../user/project/repository/tags/index.md).
-Tags help you mark certain deployments and releases for later
-reference. Git supports two types of tags:
-
-- Annotated tags: An unchangeable part of Git history.
-- Lightweight (soft) tags: Tags that can be set and removed as needed.
-
-Many projects combine an annotated release tag with a stable branch. Consider
-setting deployment or release tags automatically.
-
-## Tags sample workflow
-
-1. Create a lightweight tag.
-1. Create an annotated tag.
-1. Push the tags to the remote repository.
-
-```shell
-git checkout master
-
-# Lightweight tag
-git tag my_lightweight_tag
-
-# Annotated tag
-git tag -a v1.0 -m 'Version 1.0'
-
-# Show list of the existing tags
-git tag
-
-git push origin --tags
-```
-
-## Related topics
-
-- [Tagging](https://git-scm.com/book/en/v2/Git-Basics-Tagging) Git reference page
+<!-- This redirect file can be deleted after <2023-05-27>. -->
+<!-- Redirects that point to other docs in the same project expire in three months. -->
+<!-- Redirects that point to docs in a different project or site (for example, link is not relative and starts with `https:`) expire in one year. -->
+<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/redirects.html -->
diff --git a/doc/topics/git/terminology.md b/doc/topics/git/terminology.md
index ac097396bef..cef9b7cc35b 100644
--- a/doc/topics/git/terminology.md
+++ b/doc/topics/git/terminology.md
@@ -4,9 +4,9 @@ group: Source Code
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
---
-# Git terminology
+# Git concepts
-The following are commonly-used Git terms.
+The following are commonly-used Git concepts.
## Repository
@@ -27,7 +27,7 @@ In GitLab, a repository is contained in a **project**.
## Fork
When you want to contribute to someone else's repository, you make a copy of it.
-This copy is called a [**fork**](../../user/project/repository/forking_workflow.md#creating-a-fork).
+This copy is called a [**fork**](../../user/project/repository/forking_workflow.md#create-a-fork).
The process is called "creating a fork."
When you fork a repository, you create a copy of the project in your own
diff --git a/doc/topics/git/troubleshooting_git.md b/doc/topics/git/troubleshooting_git.md
index a116f6cc978..502acf5f7b4 100644
--- a/doc/topics/git/troubleshooting_git.md
+++ b/doc/topics/git/troubleshooting_git.md
@@ -75,7 +75,7 @@ Configuring both the client and the server is unnecessary.
```
- On Windows, if you are using PuTTY, go to your session properties, then
- navigate to "Connection" and under "Sending of null packets to keep
+ go to "Connection" and under "Sending of null packets to keep
session active", set `Seconds between keepalives (0 to turn off)` to `60`.
**To configure SSH on the server side**, edit `/etc/ssh/sshd_config` and add:
@@ -186,7 +186,7 @@ fatal: early EOF
fatal: index-pack failed
```
-This is a common problem with Git itself, due to its inability to handle large files or large quantities of files.
+This problem is common in Git itself, due to its inability to handle large files or large quantities of files.
[Git LFS](https://about.gitlab.com/blog/2017/01/30/getting-started-with-git-lfs-tutorial/) was created to work around this problem; however, even it has limitations. It's usually due to one of these reasons:
- The number of files in the repository.
@@ -221,11 +221,17 @@ apply more than one:
1. Modify the GitLab instance's
[`gitlab.rb`](https://gitlab.com/gitlab-org/omnibus-gitlab/-/blob/13.5.1+ee.0/files/gitlab-config-template/gitlab.rb.template#L1435-1455) file:
- ```shell
- gitaly['gitconfig'] = [
- # Set the http.postBuffer size, in bytes
- {key: "http.postBuffer", value: "524288000"},
- ]
+ ```ruby
+ gitaly['configuration'] = {
+ # ...
+ git: {
+ # ...
+ config: [
+ # Set the http.postBuffer size, in bytes
+ {key: "http.postBuffer", value: "524288000"},
+ ],
+ },
+ }
```
1. After applying this change, apply the configuration change:
@@ -282,3 +288,105 @@ The bug was reported [in this issue](https://gitlab.com/gitlab-org/gitlab/-/issu
If you receive an `HTTP Basic: Access denied` error when using Git over HTTP(S),
refer to the [two-factor authentication troubleshooting guide](../../user/profile/account/two_factor_authentication.md#troubleshooting).
+
+## `401` errors logged during successful `git clone`
+
+When cloning a repository via HTTP, the
+[`production_json.log`](../../administration/logs/index.md#production_jsonlog) file
+may show an initial status of `401` (unauthorized), quickly followed by a `200`.
+
+```json
+{
+ "method":"GET",
+ "path":"/group/project.git/info/refs",
+ "format":"*/*",
+ "controller":"Repositories::GitHttpController",
+ "action":"info_refs",
+ "status":401,
+ "time":"2023-04-18T22:55:15.371Z",
+ "remote_ip":"x.x.x.x",
+ "ua":"git/2.39.2",
+ "correlation_id":"01GYB98MBM28T981DJDGAD98WZ",
+ "duration_s":0.03585
+}
+{
+ "method":"GET",
+ "path":"/group/project.git/info/refs",
+ "format":"*/*",
+ "controller":"Repositories::GitHttpController",
+ "action":"info_refs",
+ "status":200,
+ "time":"2023-04-18T22:55:15.714Z",
+ "remote_ip":"x.x.x.x",
+ "user_id":1,
+ "username":"root",
+ "ua":"git/2.39.2",
+ "correlation_id":"01GYB98MJ0CA3G9K8WDH7HWMQX",
+ "duration_s":0.17111
+}
+```
+
+You should expect this initial `401` log entry for each Git operation performed over HTTP,
+due to how [HTTP Basic authentication](https://en.wikipedia.org/wiki/Basic_access_authentication) works.
+
+When the Git client initiates a clone, the initial request sent to GitLab does not provide
+any authentication details. GitLab returns a `401 Unauthorized` result for that request.
+A few milliseconds later, the Git client sends a follow-up request containing authentication
+details. This second request should succeed, and result in a `200 OK` log entry.
+
+If a `401` log entry lacks a corresponding `200` log entry, the Git client is likely using either:
+
+- An incorrect password.
+- An expired or revoked token.an incorrect
+
+If not rectified, you could encounter
+[`403` (Forbidden) errors](#403-error-when-performing-git-operations-over-http)
+instead.
+
+## `403` error when performing Git operations over HTTP
+
+When performing Git operations over HTTP, a `403` (Forbidden) error indicates that
+your IP address has been blocked by the failed-authentication ban:
+
+```plaintext
+fatal: unable to access 'https://gitlab.com/group/project.git/': The requested URL returned error: 403
+```
+
+The `403` can be seen in the [`production_json.log`](../../administration/logs/index.md#production_jsonlog):
+
+```json
+{
+ "method":"GET",
+ "path":"/group/project.git/info/refs",
+ "format":"*/*",
+ "controller":"Repositories::GitHttpController",
+ "action":"info_refs",
+ "status":403,
+ "time":"2023-04-19T22:14:25.894Z",
+ "remote_ip":"x.x.x.x",
+ "user_id":1,
+ "username":"root",
+ "ua":"git/2.39.2",
+ "correlation_id":"01GYDSAKAN2SPZPAMJNRWW5H8S",
+ "duration_s":0.00875
+}
+```
+
+If your IP address has been blocked, a corresponding log entry exists in the
+[`auth_json.log`](../../administration/logs/index.md#auth_jsonlog):
+
+```json
+{
+ "severity":"ERROR",
+ "time":"2023-04-19T22:14:25.893Z",
+ "correlation_id":"01GYDSAKAN2SPZPAMJNRWW5H8S",
+ "message":"Rack_Attack",
+ "env":"blocklist",
+ "remote_ip":"x.x.x.x",
+ "request_method":"GET",
+ "path":"/group/project.git/info/refs?service=git-upload-pack"}
+```
+
+The failed authentication ban limits differ depending if you are using a
+[self-managed instance](../../security/rate_limits.md#failed-authentication-ban-for-git-and-container-registry)
+or [GitLab.com](../../user/gitlab_com/index.md#ip-blocks).
diff --git a/doc/topics/git/unstage.md b/doc/topics/git/unstage.md
index 142a80a9ad9..3f509cdacef 100644
--- a/doc/topics/git/unstage.md
+++ b/doc/topics/git/unstage.md
@@ -2,18 +2,22 @@
stage: Create
group: Source Code
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
-comments: false
---
-# Unstage **(FREE)**
+# Unstage a file in Git **(FREE)**
-- To remove files from stage use reset HEAD where HEAD is the last commit of the current branch. This unstages the file but maintain the modifications.
+When you _stage_ a file in Git, you instruct Git to track changes to the file in
+preparation for a commit. To instruct Git to disregard changes to a file, and not
+include it in your next commit, _unstage_ the file.
+
+- To remove files from stage use `reset HEAD`, where HEAD is the last commit of
+ the current branch. This unstages the file but maintains the modifications.
```shell
git reset HEAD <file>
```
-- To revert the file back to the state it was in before the changes we can use:
+- To revert the file back to the state it was in before the changes:
```shell
git checkout -- <file>
@@ -26,7 +30,8 @@ comments: false
git rm -r <dirname>
```
-- If we want to remove a file from the repository but keep it on disk, say we forgot to add it to our `.gitignore` file then use `--cache`:
+- To keep a file on disk but remove it from the repository (such as a file you want
+ to add to `.gitignore`), use the `rm` command with the `--cache` flag:
```shell
git rm <filename> --cache
diff --git a/doc/topics/git/useful_git_commands.md b/doc/topics/git/useful_git_commands.md
index 235412f511a..22548be2e8b 100644
--- a/doc/topics/git/useful_git_commands.md
+++ b/doc/topics/git/useful_git_commands.md
@@ -130,12 +130,6 @@ Use this to check the Git history of the file:
git log -- <file>
```
-### Find the tags that contain a particular SHA
-
-```shell
-git tag --contains <sha>
-```
-
### Check the content of each change to a file
```shell