让前端飞前端Git

git-相关知识

2018-11-05  本文已影响11人  墨_梵

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
上一篇下一篇

猜你喜欢

热点阅读