diff options
Diffstat (limited to 'doc/university/training/topics')
-rw-r--r-- | doc/university/training/topics/agile_git.md | 33 | ||||
-rw-r--r-- | doc/university/training/topics/bisect.md | 76 | ||||
-rw-r--r-- | doc/university/training/topics/env_setup.md | 73 | ||||
-rw-r--r-- | doc/university/training/topics/feature_branching.md | 31 | ||||
-rw-r--r-- | doc/university/training/topics/getting_started.md | 86 | ||||
-rw-r--r-- | doc/university/training/topics/git_add.md | 40 | ||||
-rw-r--r-- | doc/university/training/topics/git_intro.md | 27 | ||||
-rw-r--r-- | doc/university/training/topics/git_log.md | 60 | ||||
-rw-r--r-- | doc/university/training/topics/merge_conflicts.md | 69 | ||||
-rw-r--r-- | doc/university/training/topics/merge_requests.md | 40 | ||||
-rw-r--r-- | doc/university/training/topics/rollback_commits.md | 81 | ||||
-rw-r--r-- | doc/university/training/topics/stash.md | 82 | ||||
-rw-r--r-- | doc/university/training/topics/subtree.md | 52 | ||||
-rw-r--r-- | doc/university/training/topics/unstage.md | 33 |
14 files changed, 56 insertions, 727 deletions
diff --git a/doc/university/training/topics/agile_git.md b/doc/university/training/topics/agile_git.md index cb82d3cec64..f912f92fad2 100644 --- a/doc/university/training/topics/agile_git.md +++ b/doc/university/training/topics/agile_git.md @@ -1,33 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../user/project/issue_board.md' --- -# Agile and Git +Information about using Agile concepts in GitLab can be found in [another location](../../../user/project/issue_board.md). -## Agile - -Lean software development methods focused on collaboration and interaction -with fast and smaller deployment cycles. - -## Where Git comes in - -Git is an excellent tool for an Agile team considering that it allows -decentralized and simultaneous development. - -### Branching And Workflows - -Branching in an Agile environment usually happens around user stories with one -or more developers working on it. - -If more than one developer then another branch for each developer is also used -with their initials, and US ID. - -After its tested merge into master and remove the branch. - -## What about GitLab - -Tools like GitLab enhance collaboration by adding dialog around code mainly -through issues and merge requests. +<!-- This redirect file can be deleted after <2021-07-23>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/bisect.md b/doc/university/training/topics/bisect.md index 8af77031c93..9c06f0b407d 100644 --- a/doc/university/training/topics/bisect.md +++ b/doc/university/training/topics/bisect.md @@ -1,76 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../topics/git/bisect.md' --- -# Bisect +This document was moved to [another location](../../../topics/git/bisect.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 <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/env_setup.md b/doc/university/training/topics/env_setup.md index bd487731783..2fd0a6762e2 100644 --- a/doc/university/training/topics/env_setup.md +++ b/doc/university/training/topics/env_setup.md @@ -1,73 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../topics/index.md' --- -# Configure your environment +This document was removed. See our [topics](../../../topics/index.md) for similar content. -## Install - -- **Windows** - Install 'Git for Windows' from [Git for Windows](https://gitforwindows.org). -- **Mac** - - Type '`git`' in the Terminal application. - - If it's not installed, it prompts you to install it. - -- **GNU/Linux** - Enter `which git` in the Terminal application and press <kbd>Enter</kbd> to - determine if Git is installed on your system. - - - If the output of that command gives you the path to the Git executable, similar to - `/usr/bin/git`, then Git is already installed on your system. - - If the output of the command displays "command not found" error, Git isn't installed on your system. - - GitLab recommends installing Git with the default package manager of your distribution. - The following commands install Git on various GNU/Linux distributions using their - default package managers. After you run the command corresponding to your distribution - and complete the installation process, Git should be available on your system: - - - **Arch Linux and its derivatives** - `sudo pacman -S git` - - **Fedora, RHEL, and CentOS** - For the `yum` package manager run `sudo yum install git-all`, - and for the `dnf` package manager run `sudo dnf install git`. - - **Debian/Ubuntu and their derivatives** - `sudo apt-get install git` - - **Gentoo** - `sudo emerge --ask --verbose dev-vcs/git` - - **openSUSE** - `sudo zypper install git` -- **FreeBSD** - `sudo pkg install git` -- **OpenBSD** - `doas pkg_add git` - -## Configure Git - -One-time configuration of the Git client - -```shell -git config --global user.name "Your Name" -git config --global user.email you@example.com -``` - -## Configure SSH Key - -```shell -ssh-keygen -t rsa -b 4096 -C "you@computer-name" -``` - -```shell -# You will be prompted for the following information. Press enter to accept the defaults. Defaults appear in parentheses. -Generating public/private rsa key pair. -Enter file in which to save the key (/Users/you/.ssh/id_rsa): -Enter passphrase (empty for no passphrase): -Enter same passphrase again: -Your identification has been saved in /Users/you/.ssh/id_rsa. -Your public key has been saved in /Users/you/.ssh/id_rsa.pub. -The key fingerprint is: -39:fc:ce:94:f4:09:13:95:64:9a:65:c1:de:05:4d:01 you@computer-name -``` - -Copy your public key and add it to your GitLab profile - -```shell -cat ~/.ssh/id_rsa.pub -``` - -```shell -ssh-rsa AAAAB3NzaC1yc2EAAAADAQEL17Ufacg8cDhlQMS5NhV8z3GHZdhCrZbl4gz you@example.com -``` +<!-- This redirect file can be deleted after <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/feature_branching.md b/doc/university/training/topics/feature_branching.md index f6233bddb18..495462cdd00 100644 --- a/doc/university/training/topics/feature_branching.md +++ b/doc/university/training/topics/feature_branching.md @@ -1,31 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../topics/git/feature_branching.md' --- -# Feature branching +This document was moved to [another location](../../../topics/git/feature_branching.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: This 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 <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/getting_started.md b/doc/university/training/topics/getting_started.md index 2c3d5fe15de..3dc3902c2e3 100644 --- a/doc/university/training/topics/getting_started.md +++ b/doc/university/training/topics/getting_started.md @@ -1,86 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../topics/git/getting_started.md' --- -# Getting Started +This document was moved to [another location](../../../topics/git/getting_started.md). -## Instantiating Repositories - -- Create a new repository by instantiating it through: - - ```shell - git init - ``` - -- Copy an existing project by cloning the repository through: - - ```shell - git clone <url> - ``` - -## Central Repositories - -- To instantiate a central repository a `--bare` flag is required. -- Bare repositories don't allow file editing or committing changes. -- Create a bare repository with: - - ```shell - git init --bare project-name.git - ``` - -## Instantiate workflow with clone - -1. Create a project in your user namespace. - - Choose to import from **Any Repository by URL** and use <https://gitlab.com/gitlab-org/training-examples.git>. -1. Create a '`Workspace`' directory in your home directory. -1. Clone the '`training-examples`' project. - -```shell -mkdir ~/workspace -cd ~/workspace - -git clone git@gitlab.example.com:<username>/training-examples.git -cd training-examples -``` - -## Git concepts - -**Untracked files** - -New files that Git has not been told to track previously. - -**Working area** - -Files that have been modified but are not committed. - -**Staging area** - -Modified files that have been marked to go in the next commit. - -## Committing Workflow - -1. Edit '`edit_this_file.rb`' in '`training-examples`' -1. See it listed as a changed file (working area) -1. View the differences -1. Stage the file -1. Commit -1. Push the commit to the remote -1. View the Git log - -```shell -# Edit `edit_this_file.rb` -git status -git diff -git add <file> -git commit -m 'My change' -git push origin master -git log -``` - -## Note - -- `git fetch` vs `git pull` -- Pull is `git fetch` + `git merge` +<!-- This redirect file can be deleted after <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/git_add.md b/doc/university/training/topics/git_add.md index d136b9151bc..aa5e756995f 100644 --- a/doc/university/training/topics/git_add.md +++ b/doc/university/training/topics/git_add.md @@ -1,40 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../topics/git/git_add.md' --- -# Git Add +This document was moved to [another location](../../../topics/git/git_add.md). -Adds content to the index or staging area. - -- Adds a list of file: - - ```shell - git add <files> - ``` - -- Adds all files including deleted ones: - - ```shell - git add -A - ``` - -- Add all text files in current dir: - - ```shell - git add *.txt - ``` - -- Add all text file in the project: - - ```shell - git add "*.txt*" - ``` - -- Adds all files in directory: - - ```shell - git add views/layouts/ - ``` +<!-- This redirect file can be deleted after <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/git_intro.md b/doc/university/training/topics/git_intro.md index 416d421956c..2fd0a6762e2 100644 --- a/doc/university/training/topics/git_intro.md +++ b/doc/university/training/topics/git_intro.md @@ -1,27 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../topics/index.md' --- -# Git introduction +This document was removed. See our [topics](../../../topics/index.md) for similar content. -## Intro - -<https://git-scm.com/about> - -- Distributed version control - - Does not rely on connection to a central server - - Many copies of the complete history -- Powerful branching and merging -- Adapts to nearly any workflow -- Fast, reliable and stable file format - -## Help - -Use the tools at your disposal when you get stuck. - -- Use '`git help <command>`' command -- Use Google -- Read documentation at <https://git-scm.com> +<!-- This redirect file can be deleted after <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/git_log.md b/doc/university/training/topics/git_log.md index ae4ae69ce76..1af8abb0782 100644 --- a/doc/university/training/topics/git_log.md +++ b/doc/university/training/topics/git_log.md @@ -1,60 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../topics/git/git_log.md' --- -# Git Log +This document was moved to [another location](../../../topics/git/git_log.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 <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/merge_conflicts.md b/doc/university/training/topics/merge_conflicts.md index 66771559298..d76d297803f 100644 --- a/doc/university/training/topics/merge_conflicts.md +++ b/doc/university/training/topics/merge_conflicts.md @@ -1,69 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../topics/git/merge_conflicts.md' --- -# Merge conflicts +This document was moved to [another location](../../../topics/git/merge_conflicts.md). -- Happen often -- Learning to fix conflicts is hard -- Practice makes perfect -- Force push after fixing conflicts. Be careful! - -## Merge conflicts sample workflow - -1. Checkout a new branch and edit `conflicts.rb`. Add 'Line4' and 'Line5'. -1. Commit and push. -1. Checkout master and edit `conflicts.rb`. Add 'Line6' and 'Line7' below 'Line3'. -1. Commit and push to master. -1. Create a merge request and watch it fail. -1. Rebase our new branch with master. -1. Fix conflicts on the `conflicts.rb` file. -1. Stage the file and continue rebasing. -1. Force push the changes. -1. Finally continue with the Merge Request. - -```shell -git checkout -b conflicts_branch - -# vi conflicts.rb -# Add 'Line4' and 'Line5' - -git commit -am "add line4 and line5" -git push origin conflicts_branch - -git checkout master - -# vi conflicts.rb -# Add 'Line6' and 'Line7' -git commit -am "add line6 and line7" -git push origin master -``` - -Create a merge request on the GitLab web UI, and a conflict warning displays. - -```shell -git checkout conflicts_branch -git fetch -git rebase master - -# Fix conflicts by editing the files. - -git add conflicts.rb -# No need to commit this file - -git rebase --continue - -# Remember that we have rewritten our commit history so we -# need to force push so that our remote branch is restructured -git push origin conflicts_branch -f -``` - -## Note - -- When to use `git merge` and when to use `git rebase` -- Rebase when updating your branch with master -- Merge when bringing changes from feature to master -- Reference: <https://www.atlassian.com/git/tutorials/merging-vs-rebasing> +<!-- This redirect file can be deleted after <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/merge_requests.md b/doc/university/training/topics/merge_requests.md index a4a3108ebd1..80ead103fdd 100644 --- a/doc/university/training/topics/merge_requests.md +++ b/doc/university/training/topics/merge_requests.md @@ -1,40 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../user/project/merge_requests/index.md' --- -# Code review and collaboration with Merge Requests +This document was moved to [another location](../../../user/project/merge_requests/index.md). -- When you want feedback create a merge request -- Target is the default branch (usually master) -- Assign or mention the person you would like to review -- Add `[Draft]` to the title if it's a work in progress -- When accepting, always delete the branch -- Anyone can comment, not just the assignee -- Push corrections to the same branch - -## Merge requests - -**Create your first merge request** - -1. Use the blue button in the activity feed -1. View the diff (changes) and leave a comment -1. Push a new commit to the same branch -1. Review the changes again and notice the update - -## Feedback and Collaboration - -- Merge requests are a time for feedback and collaboration -- Giving feedback is hard -- Be as kind as possible -- Receiving feedback is hard -- Be as receptive as possible -- Feedback is about the best code, not the person. You are not your code - -Review the Thoughtbot code-review guide for suggestions to follow when reviewing merge requests: -[https://github.com/thoughtbot/guides/tree/master/code-review](https://github.com/thoughtbot/guides/tree/master/code-review) - -See GitLab merge requests for examples: -[https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests) +<!-- This redirect file can be deleted after <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/rollback_commits.md b/doc/university/training/topics/rollback_commits.md index 34c2d9687bb..b87aa12b834 100644 --- a/doc/university/training/topics/rollback_commits.md +++ b/doc/university/training/topics/rollback_commits.md @@ -1,81 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../topics/git/rollback_commits.md' --- -# Rollback Commits +This document was moved to [another location](../../../topics/git/rollback_commits.md). -## Undo Commits - -- Undo last commit putting everything back into the staging area: - - ```shell - git reset --soft HEAD^ - ``` - -- Add files and change message with: - - ```shell - git commit --amend -m "New Message" - ``` - -- Undo last and remove changes: - - ```shell - git reset --hard HEAD^ - ``` - -- Same as last one but for two commits back: - - ```shell - git reset --hard HEAD^^ - ``` - -**Don't reset after pushing** - -## Reset Workflow - -1. Edit file again 'edit_this_file.rb' -1. Check status -1. Add and commit with wrong message -1. Check log -1. Amend commit -1. Check log -1. Soft reset -1. Check log -1. Pull for updates -1. Push changes - -## Commands - -```shell -# Change file edit_this_file.rb -git status -git commit -am "kjkfjkg" -git log -git commit --amend -m "New comment added" -git log -git reset --soft HEAD^ -git log -git pull origin master -git push origin master -``` - -## Note - -- `git revert` vs `git reset` -- Reset removes the commit while revert removes the changes but leaves the commit -- Revert is safer considering we can revert a revert - -```shell -# Changed file -git commit -am "bug introduced" -git revert HEAD -# New commit created reverting changes -# Now we want to re apply the reverted commit -git log # take hash from the revert commit -git revert <rev commit hash> -# reverted commit is back (new commit created again) -``` +<!-- This redirect file can be deleted after <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/stash.md b/doc/university/training/topics/stash.md index 051103e5f4b..ea9ba6a7bcc 100644 --- a/doc/university/training/topics/stash.md +++ b/doc/university/training/topics/stash.md @@ -1,82 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../topics/git/stash.md' --- -# Git Stash +This document was moved to [another location](../../../topics/git/stash.md). -We use `git stash` to store our changes when they are not ready to be committed -and we need to change to a different branch. - -- Stash: - - ```shell - git stash save - # or - git stash - # or with a message - git stash save "this is a message to display on the list" - ``` - -- Apply stash to keep working on it: - - ```shell - git stash apply - # or apply a specific one from out stack - git stash apply stash@{3} - ``` - -- Every time we save a stash it gets stacked so by using `list` we can see all our - stashes. - - ```shell - git stash list - # or for more information (log methods) - git stash list --stat - ``` - -- To clean our stack we need to manually remove them: - - ```shell - # drop top stash - git stash drop - # or - git stash drop <name> - # to clear all history we can use - git stash clear - ``` - -- Apply and drop on one command: - - ```shell - git stash pop - ``` - -- If we meet conflicts we need to either reset or commit our changes. -- Conflicts through `pop` doesn't drop a stash afterwards. - -## Git Stash sample workflow - -1. Modify a file -1. Stage file -1. Stash it -1. View our stash list -1. Confirm no pending changes through status -1. Apply with pop -1. View list to confirm changes - -```shell -# Modify edit_this_file.rb file -git add . - -git stash save "Saving changes from edit this file" - -git stash list -git status - -git stash pop -git stash list -git status -``` +<!-- This redirect file can be deleted after <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/subtree.md b/doc/university/training/topics/subtree.md index 54461915a05..5090ff8ca36 100644 --- a/doc/university/training/topics/subtree.md +++ b/doc/university/training/topics/subtree.md @@ -1,52 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../topics/git/subtree.md' --- -# Subtree +This document was moved to [another location](../../../topics/git/subtree.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 add --prefix <target-folder> <url> <branch>` -- Ex: `git config alias.sbp 'subtree pull --prefix st / - git@gitlab.com:balameb/subtree-nested-example.git master --squash'` - -```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 <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/university/training/topics/unstage.md b/doc/university/training/topics/unstage.md index 30d26854135..13c21f5cbb2 100644 --- a/doc/university/training/topics/unstage.md +++ b/doc/university/training/topics/unstage.md @@ -1,33 +1,8 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments -comments: false +redirect_to: '../../../topics/git/unstage.md' --- -# Unstage +This document was moved to [another location](../../../topics/git/unstage.md). -- 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. - - ```shell - git reset HEAD <file> - ``` - -- To revert the file back to the state it was in before the changes we can use: - - ```shell - git checkout -- <file> - ``` - -- To remove a file from disk and repository, use `git rm`. To remove a directory, use the `-r` flag: - - ```shell - git rm '*.txt' - 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`: - - ```shell - git rm <filename> --cache - ``` +<!-- This redirect file can be deleted after <2021-08-13>. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> |