1、git初始化仓库
git init 初始化本地仓库
2、提交
==流程:工作区—(add)—>暂存区—(commit)—>本地仓库—(push)—>远程仓库==
git add . 或者 git add test.html //提交到暂存区
git commit -m '注释文字' //把暂存区的改动提交到本地仓库
git push //把本地仓库推到远程仓库
git add . //add所有文件
git rm --cached abc.txt //add所有文件之后,不想add abc.txt文件
git commit --amend -m "这才是正确提交" // push之前发现commit信息错误,更改commit信息
git add -u //将文件的修改、文件的删除,添加到暂存区。
git add . //将文件的修改,文件的新建,添加到暂存区。
git add -A //将文件的修改,文件的删除,文件的新建,添加到暂存区。
3、撤销
撤销然后修改提交
git reset head^
git add .
git commit -m '再次修改提交'
git push origin feature/test --force //会覆盖提交上次的,谨慎操作,有可能会覆盖掉别人代码
git clean -fd //一次性删除新增的文件 'Untracked files'
1、未add,未commit
git checkout -- xxx.txt //还原对工作区的修改,恢复原状
2、已add,未commit
撤销单独的文件 git reset HEAD xxx.txt
撤销所有文件 git reset HEAD
3、已add,已commit
git reset --hard HEAD^ //回退到上一个版本,但是改动会被清掉
git reset head^ //回退上一个版本,回到commit之前,但是改动还是会保留
4、commit之后push之前要修改commit信息
git commit --amend -m "修改的注释信息"
5、已add,已commit,已push
git reset head^
git add .
git commit -m '覆盖提交'
git push origin abc --force (如果不是自己的分支,这样有可能会冲掉别人的代码)
4、分支
git checkout abc //切换到abc分支
git checkout -b abc //新建abc分支并切换
git push --set-upstream origin abc //本地新建分支abc提交到远程仓库并与之进行关联
git branch //查看本地分支
git branch -a //查看所有分支
git branch -r //查看远程仓库的分支
git branch -vv //查看本地分支与远程分支的映射关系
git branch -u origin/abc 或者 git branch --set-upstream-to origin/abc //建立当前分支与远程分支的映射关系
git branch --unset-upstream //撤销本地分支与远程分支的映射关系
git remote show origin //查看远程仓库与本地的关联
gir remote prune origin //把远程仓库已删除的分支,在本地删除
git branch -D abc //删除本地abc分支
5、暂存
暂存
git stash //暂时把修改的内容暂存起来,会还原回初始的样子
git stash pop //把刚才暂存的拿出来
6、分支合并
git merge abc //把abc分支合并到当前分支
git rebase orgin/abc //更新分支abc
7、版本
git reflog //查看版本号
git reflog -2 //查看最近2次的版本信息
git reset HEAD^ //回退所有内容到上一个版本(本地修改代码不变)
git reset HEAD^ a //回退a 这个文件的版本到上一个版本(本地修改代码不变)
git reset id //id:版本号 回退到某个版本(本地修改代码不变)
git reset --hard HEAD^ //回退所有内容到上一个版本(本地修改丢失)
git reset --hard 12345 //将本地的状态回退到12345版本(本地修改丢失)
git reset –hard origin/master //将本地的状态回退到和远程的一样
8、场景
1、如果正在A分支做,这时候要切到B分支改bug,改完回来再继续做A
git status ----> git stash ----> git checkout B ----> 改bug ----> git checkout A ----> git stash pop
2、A分支有修改,想把A分支的修改迁移到新建B分支
git add . ----> git commit -m 'stash' ----> git checkout -b B ----> git checkout A ---> git reset head^ ----> git checkout B
3、早晨从A分支拉了一个B分支,下午要提交B分支,但是A分支已经更新了多次,此时要更新A分支
git rebase origin/A分支
或者:从3.3.0分支拉了一个a分支,但是3.4.0分支有新提交,a要合到3.4.0上
git rebase origin/3.4.0
之后用 -f 强制提交下
4、本地新建分支,并提交到远程仓库,然后记得关联本地仓库
git checkout -b abc ----> git add commit ----> git push --set-upstream origin abc
9、初始化提交
1、进入本地文件夹
2、git init
3、git add .
4、git commit -m 'aaaaa'
5、git remote add origin git@github.com:XXX/XXX.git
6、git push -u origin master
网友评论