美文网首页
Git | 基础学习笔记

Git | 基础学习笔记

作者: 清無 | 来源:发表于2020-01-17 13:38 被阅读0次

如果想修改某个历史tag对应的commit代码,则可以:

git checkout 0.0.1 (HEAD游离在这个提交上);
修改代码(问题修复);
git add, commit;
git tag 0.0.1.1 (问题修复后制定tag);
git push origin 0.0.1.1(推送当前tag到远端);
git switch master(切换到主分支)
git merge master(合并HEAD到master上);
git push(推送合并到远端);

基础使用

init

add xx

commit

log --pretty=oneline

status

配置

  • config --global user.name "Your Name config --global user.email "email@example.com"

  • 文件位置:~/.gitconfig(全局) .git/config(当前仓库)

版本管理

暂存区(staged)

  • restore --staged xx

  • reset HEAD xx

回退 (慎用--hard)

  • reset --hard HEAD^

  • reset --hard 0a32

  • reflog 记录每一次操作命令

删除

  • rm xx

  • git rm xx

恢复

  • restore xx

  • checkout -- xx

远程仓库

添加远程仓库

remote先将本地仓库与远端仓库建立链接 origin指远程仓库的默认名字,你可以改为任意名字。

  • 也可以直接使用 git push git@github.com:BackWorld/GitLearning2.git

推送到远程仓库

  • push -u origin master

-u指将远程的origin/master和本地master分支建立的对应关系,这样以后git push/pull时就不用指定远程仓库/分支;

相当于 git push origin master + git branch --set-upstream-to=origin/master master

  • git show-ref 查看本地仓库与远程仓库的链接关系

  • git remote -v 查看远程仓库refs

  • git remote remove XX 移除仓库ref

克隆远程仓库

  • git clone [LocalDir]

  • git remote -v 查看远程仓库关联信息

远程仓库协作

  • 查看远程库信息,使用git remote -v;

本地新建的分支如果不推送到远程,对其他人就是不可见的;

从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;

在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;

建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;

从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。

分支管理

当前分支:HEAD指向的分支

git branch命令列出所有分支,*dev表示当前分支

branch dev: 创建分支

checkout dev: 切换分支 checkout -b dev: 创建+切换

切换分支:switch dev(本地已存在的分支)

创建+切换分支:switch -c dev

合并分支: merge dev(将dev分支合并到当前分支上去)

删除分支

  • 本地分支:branch -d dev

  • 远程分支:push origin -d dev

合并冲突

  • <<<<<< HEAD (当前分支改动)
    xxx
    >>>>>> feature1 (目标分支改动)

查看格式化日志

  • log --graph --pretty=oneline --abbrev-commit

暂存工作区: stash

查看已暂存的工作区: stash list 还原工作区:stash apply(不删除原暂存信息) 还原+删除:stash pop=stash apply+stash drop. 还原指定工作区: git stash apply stash@{0}

复制指定提交到当前分支:cherry-pick 4c805e2

rebase: 把分叉的提交历史“整理”成一条直线,看上去更直观。缺点是本地的分叉提交已经被修改过了。

rebase操作可以把本地未push的分叉提交历史整理成直线;

标签管理

添加

  • tag 1.0 在当前分支最新commit处打tag

  • tag 0.9 ade2d3 在指定的commit号上打tag

  • tag -a 0.8 -m 'version 0.8 released.' 8fa83231595e -a: 指定tag名 -m: 指定tag信息

删除

  • tag -d 0.1

  • push origin :refs/tags/0.1 删除远程对应的tag

推送

  • push origin 0.1

  • dev->master合有冲突,当然是先从master合到dev,解决冲突,再合回去

第三方仓库使用

相关文章

  • Git常用命令与学习总结

    安装Git Git的下载地址:Git官网下载地址 学习网址 git 学习笔记- Book 在线练习地址 基础常用指...

  • Git | 基础学习笔记

    如果想修改某个历史tag对应的commit代码,则可以: 基础使用 init add xx commit log ...

  • 学习笔记| git深入浅出 Part1_快速操作指南

    Git专题 学习笔记| git深入浅出 Part1_快速操作指南 学习笔记| git深入浅出 Part2_Git...

  • git 入门

    git 入门学习笔记----3个入门命令:git init、git add、git commit -v 学习场景(...

  • Git学习笔记-基础操作

    获取Git仓库 你可以使用git init新建Git仓库对现有项目进行管理,或者使用git clone克隆一个已存...

  • git记录

    Git Magic图解gitgit 学习笔记git游戏(学习)1、消除文档路径中文乱码git config --g...

  • Git学习笔记--常用命令整理

    超实用Git学习笔记 Git全局配置git config --global user.name "用户名"git ...

  • git学习笔记(二)—— git的简单操作

    这是本系列学习笔记的第二篇git 学习笔记(一)—— 初识 git 前言 本篇文章将简要的介绍 Git 的一般操作...

  • 关于crlf

    Git学习笔记:Git设置CRLF(行尾换行符) git config --global core.autocrl...

  • GIT

    Git学习笔记 Git 与 Github对接: cd到当前文档 git init初始化git git add -A...

网友评论

      本文标题:Git | 基础学习笔记

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