Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision | ||
appwiki:git [2024/04/01 05:50] – [Command Git cmds] ying | appwiki:git [2024/04/11 08:51] – [Command Git cmds] ying | ||
---|---|---|---|
Line 7: | Line 7: | ||
====== Command Git cmds ====== | ====== Command Git cmds ====== | ||
- | | + | The Three States of Git |
+ | * **Modified**: | ||
+ | * **Staged**: A modified file becomes staged when you **add it** to your staging area. Here, Git has it marked as ready to be committed in the next snapshot. This means you've told Git to include the updates from this file in the upcoming commit. | ||
+ | * **Committed**: | ||
+ | |||
+ | Cmds | ||
+ | | ||
* create a default user if you have not <code dos> | * create a default user if you have not <code dos> | ||
git config --global user.name " | git config --global user.name " | ||
git config --global user.email " | git config --global user.email " | ||
</ | </ | ||
+ | * list config <code dos>git config --list</ | ||
* create a project folder <code dos> | * create a project folder <code dos> | ||
cd SuperWebProj | cd SuperWebProj | ||
touch index.html | touch index.html | ||
+ | </ | ||
+ | * create ignore list inside git directory, create .gitignore file <code dos> | ||
+ | # ignore folder, ignore type of files | ||
+ | __pycache__/ | ||
+ | *.py[cod] | ||
+ | |||
+ | # ignore build folder | ||
+ | build/ | ||
</ | </ | ||
* cd to the folder where you want to create a repo <code dos>git init</ | * cd to the folder where you want to create a repo <code dos>git init</ | ||
Line 24: | Line 39: | ||
* check status <code dos>git status</ | * check status <code dos>git status</ | ||
* optional: you can change branch name like <code dos>git branch -m master main</ | * optional: you can change branch name like <code dos>git branch -m master main</ | ||
- | * add everything in the directory that is changed <code dos>git add .</ | + | * add everything in the directory that is changed |
+ | * all new and modified files: | ||
+ | * all new and modified + deleted files <code dos>git add -A</ | ||
+ | * all modified + deleted files <code dos>git add -u</ | ||
* to view change log <code dos>git log</ | * to view change log <code dos>git log</ | ||
* use git to zip folder <code dos> | * use git to zip folder <code dos> | ||
git archive --format=zip -o project_code.zip HEAD project_code | git archive --format=zip -o project_code.zip HEAD project_code | ||
</ | </ | ||
+ | * git download a project: cd to root of your project folders, (note: clone will create root folder of the git project, best no space, AnBn style naming) <code dos> | ||
+ | git clone https:// | ||
+ | </ | ||
+ | * git remote source for fetch and push, (this only deal with remote repo), check remote source <code dos> | ||
+ | git remote -v | ||
+ | </ | ||
+ | * git list branch, | ||
+ | * both local and remote branch< | ||
+ | * both local branch< | ||
+ | * git check all changes to files in detail, this is before changes added (not yet commit) <code dos>git diff</ | ||
+ | * always get source update before push <code dos>git pull origin branch-name | ||
+ | git push origin branch-name | ||
+ | </ | ||
+ | * create branch for a feature or a issue <code dos>git branch export-feature</ | ||
+ | * switch branch <code dos>git checkout export-feature</ | ||
+ | * push to remote repo <code dos>git push -u origin export-feature</ | ||
Extra Tips: | Extra Tips: | ||
* you can use vscode to open the folder project (the one with .git hidden folder), vscode will auto know it is a git project and it has some built-in tool to help you instead of using the git cmd | * you can use vscode to open the folder project (the one with .git hidden folder), vscode will auto know it is a git project and it has some built-in tool to help you instead of using the git cmd |