git-相关知识

作者: 墨_梵 | 来源:发表于2018-11-05 14: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
    

    相关文章

      网友评论

        本文标题:git-相关知识

        本文链接:https://www.haomeiwen.com/subject/cglsxqtx.html