Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| linux:git [2019/05/24 12:25] – created mh | linux:git [2026/10/23 11:08] (current) – [claude] Update git page: drop Atom, GitHub token auth, main branch, git switch, # comments, heading levels claude | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Git Basics ====== | ====== Git Basics ====== | ||
| - | Git is a complicated tool to use, if you don't use it on a very regular basis. | + | [[https:// |
| - | I prefer using Graphic interfaces that help a lot with git management like in Atom, but here is a recap of basic commands so I remember them when I need. | + | ===== Stage / Commit / Push ===== |
| - | ==== Stage / Commit / Push ==== | + | < |
| + | git add the.file | ||
| + | git commit -m "The message" | ||
| + | git push | ||
| + | </code> | ||
| + | ===== Branches ===== | ||
| + | Switch branch (option create) | ||
| + | < | ||
| + | git switch branch_name | ||
| + | git switch -c create_branch_name | ||
| + | </ | ||
| + | |||
| + | ('' | ||
| + | |||
| + | ===== Git and Rust ===== | ||
| + | |||
| + | When you create a new Rust project using Cargo it automatically initializes a local git repository. | ||
| + | |||
| + | To connect it with a remote repository follow the basic instructions : | ||
| + | |||
| + | < | ||
| + | cd existing_folder | ||
| + | git init # Skip if in a Rust project created with cargo, git is already initialized | ||
| + | git remote add origin < | ||
| + | git add . # required | ||
| + | git commit -m " | ||
| + | git push -u origin main # This is what actually pushes (use master if your default branch is still called master) | ||
| + | </ | ||
| + | |||
| + | Git will ask you to authenticate as the owner of the remote repository. GitHub no longer accepts account passwords for git: use a personal access token (entered as the password) or an SSH key (with an SSH remote URL). | ||
| + | |||
| + | Most modern editors (VS Code, Zed...) detect the git repository automatically when the project root folder is opened directly. | ||
| + | |||
| + | If you want to set all of your branches to automatically use this remote repo when you use git pull, add --set-upstream to the push: | ||
| + | |||
| + | < | ||
| + | git push --all --set-upstream origin | ||
| + | </ | ||
| + | |||
| + | ===== Branching ===== | ||
| + | |||
| + | To get a branch that exists on the remote repository, fetch the remote data then switch to the branch: | ||
| + | |||
| + | < | ||
| + | git fetch origin | ||
| + | git switch < | ||
| + | </ | ||
| + | |||
| + | '' | ||
| + | |||
| + | ===== Resources ===== | ||
| + | |||
| + | [[https:// | ||