记录常用的git命令,不定期更新~
命令 | 用法 |
git pull origin main | 从远程分支拉最新的代码到本地的main分支上 |
git checkout -b branch1 | 新建branch1分支,并切换到这个分支 |
git add . | 将当前修改提交到暂存区 |
git commit -m "description" | 将暂存区的修改真正保存 |
git status | 查看当前分支状态(比如是否当前分支有改动) |
git branch | 列出本地有哪些分支 |
git branch -a | 列出本地和远程的所有分支 |
git push -u origin main | 把本地的main push 到远程的origin |
git merge branch1 | 把branch1合并到当前分支 |
git branch -d branch1 | 删除本地分支 |
git push origin --delete brancn1 | 删除远程分支 |
git log git reflog | 查看版本号 回退到某个版本之后,查看所有的版本号 |
git reset --hard origin/main git reset --hard HEAD^ | 回退之前的版本,Git恢复之前版本的两种方法reset、revert(图文详解)_游笑天涯的博客-优快云博客_git reverthh |
git revert -n 版本号 | 丢弃某个版本的内容,但是保留后续版本的commit |
正常工作流程:
1.从远程拉取最新的代码之后需要新建并切换到一个新的分支,因此要用到下面两个命令:
git pull origin main
git checkout -b branch1
2.然后在当前分支修改code,修改之后需要保存并添加备注,因此又会用到下面两个命令:
git add . # 将当前修改提交到暂存区
git commit -m "fix a bug" # 引号里面添加修改的备注
3. 将本地修改的这个branch1和本地main分支合并, 因此又又会用到下面两个命令:
git checkout main # 切换到main分支
git merge branch1 # 将branch1分支合并到main分支
4. 将本地的main分支提交到远程主机
git push -u origin main
ps:
1. 测试本地和github是否联通:(ssh: connect to host github.com port 22: Connection timed out)
ping github.com
2. 如果不小心在master分支上改了东西(一般情况下不允许在master上改),需要将当前的修改迁移到一个新的分支,可以直接 git checkout -b new_branch,然后commit,但是当你再回到master时,这个修改已经没了,已经被你checkout过去了。所以可以采取以下做法:
首先,保存一下自己的修改:
git stash -u
-u 表示新建的文件也会保存,否则只会保存改动的文件。
然后可以看一下自己保存的记录,不看也行:
git stash list
最后可以去一个新的分支把保存的记录pop出来,或者apply一下。pop之后保存记录就没有了,毕竟pop嘛,apply表示应用,但是记录还有。
git checkout -b new_branch1
git stash apply
用apply之后当你想在任何分支使用你保存的结果的时候,都可以apply。
参考文档: