简介
新手初学git, 先找视频过了一遍, 此处为视频笔记
若遇难点或盲区,请移步官方文档
常用:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121
| ********************************* 提交 ********************************* ———————————————————————————————————————————————————————————————————————— /////////////////////////////// **** 配置 **** /////////////////////////////// $ git config --global user.name "自己的用户名"
$ git config --global user.email "自己的邮箱" /////////////////////////////// **** 暂存区操作相关 **** /////////////////////////////// $ git status
$ git add 文件名
$ git add .
$ git reset -- 文件名
$ git reset --
$ git diff $ git diff --cached /////////////////////////////// **** 提交本地仓库相关 **** /////////////////////////////// $ git commit -m "本次提交备注信息"
$ git log
$ git log --reverse
关于查看提交历史记录的命令,有些常用的选项介绍一下: (忽略此部分就好) git log [分支名] 查看某分支的提交历史,不写分支名查看当前所在分支 git log --oneline 一行显示提交历史 git log -n 其中 n 是数字,查看最近 n 个提交 git log --author [贡献者名字] 查看指定贡献者的提交记录 git log --graph 图示法显示提交历史
////////////////////////////// **** 提交远程仓库相关 **** ////////////////////////////// $ git branch -avv
$ git push
--注意:由于我们一般使用github这个远程服务器 或公司的 远程服务器仓库 ,因此我们的本地仓库一般都是克隆过来的(所以已经跟踪了远程仓库的同名分支)。因此 git init 这个自建本地仓库的命令一般用不到。 --git默认采用更为保守的"simple"模式,只推送当前分支到远程关联的同名分支。 --当 push.default 设置为 "matching" 后,git将推送和远程同名的所有本地分支。 $ git config --global push.default matching
以上 所有指令 仅git push 需要联网 ________________________________________________________________________
******************************** 版本回退 ******************************** ________________________________________________________________________ 本地版本回退 $ git reset --soft HEAD^ 版本回退后提交时间线分叉落后一个版本强制提交
$ git push -f
以及在本地仓库随意切换任意时候的版本 $ git reflog $ git reset --hard 版本号 这些东西不在笔记中记录了 ,可基本能用熟练以后直接重复观看课程
以上 所有指令 仅git push -f 需要联网。
________________________________________________________________________ ******************************** 分支管理 ******************************** ________________________________________________________________________ $ git fetch
$ git rebase origin/master
$ git pull
$ git pull --rebase origin master ****** ///////////////////////////// **** 创建,添加新的分支 **** ///////////////////////////// $ git branch 分支名
$ git checkout 分支名
$ git checkout -b 分支名 创建分支并切换到新分支
执行 git push [主机名] [本地分支名]:[远程分支名] 即可将本地分支推送到远程仓库的分支中,通常冒号前后的分支名是相同的,如果是相同的,可以省略 git push [主机名] [远程分支名],如果远程分支不存在,会自动创建
git branch -u [主机名/远程分支名] [本地分支名] 将本地分支与远程分支关联,或者说使本地分支跟踪远程分支。 这样一来和 master 分支一样跟踪远程同名分支,可以直接使用 git push 命令推送了。
执行 git branch --unset-upstream [分支名] 即可撤销该分支对远程分支的跟踪,同样地,如果撤销当前所在的分支的跟踪,分支名可以省略不写
有没有办法在推送时就自动跟踪远程分支呢?有的,在推送的时候,加个 --set-upstream 或其简写 -u 选项即可 git push origin -u //////////////////////////////// ****** 删除远程分支 //////////////////////////////// 删除远程分支,使用 git push [主机名] :[远程分支名] ,如果一次性删除多个,可以这样:git push [主机名] :[远程分支名] :[远程分支名] :[远程分支名] 。此命令的原理是将空分支推送到远程分支,结果自然就是远程分支被删除。另一个删除远程分支的命令:git push [主机名] --delete [远程分支名]。删除远程分支的命令可以在任意本地分支中执行
删除本地分支,使用 git branch -D [分支名] ,同样地,此命令也可以一次删除多个,将需要删除的分支名罗列在命令后面即可。在此之前,先介绍一个极少用到的命令:给本地分支改名 git branch -m [原分支名] [新分支名] ,若修改当前所在分支的名字,原分支名可以省略不写
________________________________________________________________________ ******************************** 提 PR & 检查合并 PR ******************************** ________________________________________________________________________
pull request
在github中的操作,直接去复习课程 ________________________________________________________________________ ******************************** 标签(版本) ******************************** ________________________________________________________________________ 标签是在提交的基础上创建的,如果仓库的多个分支中都有这个提交版本,那么这些分支上就有关于这个提交的相同的标签。
标签的操作,直接去复习课程
标签是 Git 中的概念,而 releases 则是 Github、码云等源码托管商所提供的更高层的概念。Git 本身是没有 releases 这个概念,只有 tag。两者之间的关系则是,release 基于 tag,为 tag 添加更丰富的信息,一般是编译好的文件。
|
不推荐:
1 2 3
| $ git commit -am "本次提交备注信息"
ssh关联github 可以提高传输速度 免密推送 等
|
不常用: