• git学习


    git 基本概念

    • 工作区:仓库的目录。工作区是独立于各个分支的
    • 暂存区:数据暂时存放的区域,类似于工作区写入版本库前的缓存区。暂存区是独立于各个分支的
    • 版本库:存放所有已经提交到本地仓库的代码版本
    • 版本结构:树结构,树中每一个节点代表一个代码版本

    环境配置

    生成自己的SSH密钥,然后将公钥添加至远程仓库

    ssh-keygen -t rsa -C 'XXXX@163.com'
    
    • 1

    设置全局用户名

    git config --global user.name xxx
    
    • 1

    设置全局邮箱

    git config --global user.email xxx@163.com
    
    • 1

    查看系统配置

    git config --system --list
    
    • 1

    查看当前用户配置

    git config --global -list
    
    • 1

    库创建

    本地库同步至远程库

    将本地代码文件夹配置成git仓库

    git init
    
    • 1

    将本地仓库关联至远程库

    git remote add origin git@git.mi.com:xxx/XXX.git
    
    • 1

    关联后第一次推送master分支的所有内容

    git push -u origin master
    
    • 1

    远程库直接操作

    将远程库下载到当前目录下

    git clone git@git.mi.com:xxx/XXX.git
    
    • 1

    切换目标XXX分支

    git checkout -t XXX
    
    • 1

    添加内容

    将XX内容添加到暂存区

    git add XX
    
    • 1

    将暂存区内容提交到当前分支

    git commit -m "修正数据读取bug"
    
    • 1

    stash暂存

    将工作区和暂存中尚未提交的修改存入栈中

    git stash
    
    • 1

    将栈中存储的修改回复到当前分支,但不删除栈顶元素

    git stash apply
    
    • 1

    删除栈顶存储的修改

    git stash drop
    
    • 1

    将栈顶存储的修改恢复到当前分支,同时删除栈顶元素

    git stash pop
    
    • 1

    查看栈中所有元素

    git stash list
    
    • 1

    将当前分支推送到远程分支

    git push -u
    
    • 1

    强制提交并覆盖远程仓库

    git push -f origin master
    
    • 1

    查看当前仓库状态

    git status
    
    • 1

    git版本

    查看当前分支历史版本

    git log --pretty=online
    
    • 1

    查看HEAD指针的移动历史

    git reflog
    
    • 1

    删除命令

    将文件从仓库所用目录中删除

    git rm -- cached XX
    
    • 1

    将xx文件从暂存区里删除

    git restore --staged xx
    
    • 1

    将xx文件尚未加入暂存区的修改全部撤销

    git checkout - XX
    
    • 1

    git restore XX
    
    • 1

    代码回滚

    将代码回归到上一个版本

    git reset --hard HEAD^
    
    • 1

    向上回滚两个版本

    git reset --hard HEAD^^
    
    • 1

    向上回滚10个版本

    git reset --hard HEAD~10
    
    • 1

    回滚到某一特定版本

    git reset --hard 版本号
    
    • 1

    远程仓库

    将本地仓库关联到远程仓库

    git remote add origin git@git.mi.com:xx/xxx.git
    
    • 1

    推送远程分支

    将本地分支推送到远程仓库 branch_name 分支

    git push origin branch_name 
    
    • 1

    第一次将分支推动到远程仓库

    git push -u origin branch_name
    
    • 1

    将本地branch_name分支对应到远程分支

    git push --set-upstream origin branch_name
    
    • 1

    将远程的branch_name1分支与本地的branch_name2分支进行合并

    git branch --set-upstream-to=origin/branch_name1 branch_name2
    
    • 1

    删除远程库branch_name分支

    git push -d origin/branch_name
    
    • 1

    将远程分支branch_name拉取到本地

    git checkout -t origin/branch_name
    
    • 1

    分支合并

    将远程仓库的当前分支与本地

    git pull
    
    • 1

    将远程仓库的branch_name分支与本地仓库的当前分支进行合并

    git pull origin branch_name
    
    • 1

    删除远程仓库

    git remote rm origin
    
    • 1

    查看本地与远程仓库的关联情况

    git remote -v
    
    • 1

    分支命令

    创建新分支

    git branch branch_name
    
    • 1

    查看所有分支和当前分支所处分支

    git branch
    
    • 1

    创建并切换到branch_name分支

    git checkout -b branch_name
    
    • 1

    创建一个分支branch_name1并将将远程branch_name分支拉取到本地

    git checkout -b branch_name1 origin/branch_name
    
    • 1

    切换到branch_name分支

    git checkout branch_name
    
    • 1

    将分支branch_name合并到当前分支上

    git merge branch_name
    
    • 1

    删除本地仓库的branch_name分支

    git branch -d branch_name
    
    • 1

    删除远程仓库的branch_name分支

    git push -d origin branch_name
    
    • 1

    将远程的branch_name1分支与本地的branch_name2分支对应

    git branch --set-upstream-to=origin/branch_name1 branch_name2
    
    • 1
  • 相关阅读:
    CSDN每日一题学习训练——Java版(逆序输出、Z 字形变换、输出每天是应该学习还是休息还是锻炼)
    Java线程池maximumPoolSize和workQueue哪个先饱和?
    Parade Series
    Mac 下如何查看 Homebrew 安装的软件位置
    window mysql忘记密码解决方案
    Linux下中间件tomcat安装配置(阿帕奇猫)
    CEC2015:(二)动态多目标野狗优化算法DMODOA求解DIMP2、dMOP2、dMOP2iso、dMOP2dec(提供Matlab代码)
    03贪心:摆动序列
    面向过程词条
    【Django】执行查询——比较、删除、复制、批量修改对象
  • 原文地址:https://blog.csdn.net/fzcoolbaby/article/details/133709806