• [Git 知识小结]



    在这里插入图片描述


    1.配置

    在这里插入图片描述

    git initgit init 初始化Git仓库
    git configgit config --global user.name “Your Name”配置当前⽤户⽤户名。使⽤–global参数将配置全局⽤户名
    git config --global user.email “email@example.com”配置当前⽤户Email。使⽤–global参数将配置全局Email

    2.版本管理

    在这里插入图片描述

    git addgit add < directory >将指定⽬录的所有修改加⼊到下⼀次commit中。
    git add < file >添加指定⽂件的修改
    git commitgit commit -m 提交暂存区的修改,使⽤指定的< message >作为提交信息,⽽不是打开⽂本编辑器输⼊提交信息。
    git statusgit status显示哪些⽂件已被staged、未被staged以及未跟踪(untracked)。
    git diffgit diff⽐较⼯作区和暂存区的修改。
    git diff HEAD⽐较⼯作区和上⼀次commit后的修改。
    git diff --cached⽐较⼯作区和上⼀次commit后的修改。
    git loggit log以缺省格式显示全部commit历史。
    –pretty=oneline一行简略显示
    –graph显示图形化的branch信息。
    git refloggit reflog显示本地repo的所有commit⽇志。
    git resetgit reset移除所有暂存区的修改,但不会修改⼯作区。
    –hard移除所有暂存区的修改,并强制删除所有⼯作区的修改
    < commit >将当前分⽀回滚到指定,清除暂存区的修改,但保持⼯作区状态不变。
    –hard < commit >将当前分⽀回滚到指定,清除暂存区的修改,并强制删除所有⼯作区的修改
    git checkout– < file >将当前分⽀回滚到指定,清除暂存区的修改,并强制删除所有⼯作区的修改
    –hard < commit >将当前分⽀回滚到指定,清除暂存区的修改,并强制删除所有⼯作区的修改
    git rm-git rm 删除文件

    3.分支管理

    在这里插入图片描述

    git checkoutgit checkout -b < name >创建+切换分支
    git checkout < name >切换分支
    git branchgit branch列出所有分支
    git branch -d < name >删除分支
    git mergegit merge --no-ff普通模式合并,合并后的历史有分支,能看出来曾经做过合并
    git merge fast forward合并就看不出来曾经做过合并
    git switchgit switch -c < name >创建+切换分支
    git switch < name >切换分支
    git stashgit stash当前工作现场“储藏”起来,等以后恢复现场后继续工作
    git stash apply恢复工作现场
    git stash dropgit stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除
    git stash pop恢复的同时把stash内容也删了
    git cherry-pickgit cherry-pick < commit >提交的修改“复制”到当前分支,避免重复劳动

    4.远程仓库

    在这里插入图片描述

    git remotegit remote -v查看远程库信息
    git remote rm origin解除了本地和远程的绑定关系
    git remote add < name > < url >关联一个远程库
    git clonegit clone < url >从远程库克隆
    git pushgit push origin < branch-name >将本地指定< branch >推送到指定远程< remote >。如果远程没有对应的分⽀,将⾃动在远程创建此分⽀。
    git pullgit pull < remote >从指定< remote >抓取所有分⽀的commit并⽴刻合并到本地repo。

    5.标签管理

    在这里插入图片描述

    git taggit tag查看所有标签
    git tag < tagname >打一个新标签
    git tag -a < tagname > -m “blablabla…”可以指定标签信息
    git push origin < tagname >推送一个本地标签
    git push origin --tags推送全部未推送过的本地标签
    git tag -d < tagname >删除一个本地标签
    git push origin :refs/tags/< tagname >删除一个远程标签
    git show 查看标签信息

    6. 自定义git

    .gitignore文件

    忽略文件的原则是:

    • 忽略操作系统自动生成的文件,比如缩略图等;
    • 忽略编译生成的中间文件、可执行文件等,也就是如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库,比如Java编译产生的.class文件;
    • 忽略你自己的带有敏感信息的配置文件,比如存放口令的配置文件。
    git check-ignore命令检查
    # 排除所有.开头的隐藏文件:
    .*
    # 排除所有.class文件:
    *.class
    
    # 不排除.gitignore和App.class:
    !.gitignore
    !App.class
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • .gitignore文件本身要放到版本库里,并且可以对.gitignore做版本管理!
    • 忽略某些文件时,需要编写.gitignore;
  • 相关阅读:
    力扣解法汇总1224-最大相等频率
    html手势密码解锁插件(附源码)
    【JAVA设计模式】适配器模式
    nextjs-一个基于React的全栈框架
    IIS解析漏洞复现
    翻金币项目 QT项目 (利用Qt 5.80 实现 )
    Linux下排除死锁详细教程(基于C++11、GDB)
    PyTorch 二维多通道卷积运算方式
    【gtp&JavaScript】使用JavaScript实现套壳gtp与gtp打字输出效果
    BIGEMAP APP行车(走路)轨迹记录
  • 原文地址:https://blog.csdn.net/yuqian_ke/article/details/125603837