git_learn

Git

git分区

版本管理

版本回退

HEAD指向当前版本,HEAD^ 表示上一个版本,HEAD^^ 表示上上,往上100,即HEAD~100
git reflog查看命令历史以及要回到哪个版本

git reset --hard HEAD^

## 或者指定commit
git reset --hard 532cd2

管理修改

git checkout一般用来切换分支,还有一个重要作用就是撤销修改,丢弃工作区的修改,使其撤销到最近一次add或commit时的状态 注意要加 --

git checkout -- readme.md

git reset既可以回退版本,也可以把暂存区的修改回退到工作区,如撤销在commit之前的修改,使用 git reset HEAD readme.md 注意这里的HEAD就是表示已经在版本库上的最新版本,即可以将暂存区的的修改撤销放回工作区,再用checkout丢弃工作区的修改

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD <file>,就回到了场景1,第二步按场景1操作

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,可以使用版本回退git reset --hard HEAD^  或者其它commit

删除文件

  • 删除没用文件:工作区删除之后,版本库用git rm file然后 git commit
  • 误删文件:将版本库的文件还原,git checkout -- file

提交远程仓库一般步骤

git checkout -b new_dev origin/main
git log
git pull
git add
git commit
git push --set-upstream origin/new_dev
git checkout main
git merge new_dev
git branch -D new_dev

fork更新

fork了别人的项目想要跟进源repo的更新, 命令如下:

### 查看remote url
git remote -v
### 添加源repo的远程源
git remote add upstream $url
###  确认是否添加成功
git remote -v

### 与源repo合并, 比如我这里是更新develop分支
git fetch upstream
git merge upstream/develop

git push origin develop

reference

廖雪峰git

posted @ 2022-11-18 20:01  xle97  阅读(37)  评论(0)    收藏  举报