git基础:
-
记录每次更新
git add//添加改变到暂存区。 git commit -m “”//提交暂存的文件快照。 git commit -a -m “”//合并添加改变和提交暂存两个操作。 git rm file//删除文件 git rm \*~//查看当前目录及其子目录中所有~结尾的文件 git mv file//重命名文件
-
log日志文件
git log //会按时间列出所有的更新,最近的更新排在最上面。 git log —since=2.weeks git log -p -2 //会列出最近两次的更新
-
撤销操作
git commit —amend//补齐上一次提交,可以修改message,也可以添加一些遗漏的文件。 git reset HEAD file//取消暂存file文件。 git unstage file//同上,取消暂存file文件 git checkout — file//取消file的修改
-
打标签://为特定时间的版本打上标签
git tag//列选已有的标签 git tag -l ‘v1.4.*’//列选v1.4系列标签 git show v1.4/*git show命令查看相应标签的版本信息,并连通现实打标签式的提交 对象*/
//两种标签:
git tag -a v1.4 -m ‘my version 1.4’//带标注的标签 git tag v1.4_a //轻量级标签
//签署标签:
git tag -s v1.5 -m ‘my signed 1.5 tag’//添加签署标签 git tag -v v1.5/*此方式用于验证已经签署的标签,毁掉用GPG来验证签名,所以你 需要有签署者的公钥,存放在keyring中,才能验证。*/
//共享标签:
git push origin v1.5/*git push 并不会把标签传送到远程服务器上,只有通过显 示命令才能分享标签到远程仓库*/ git push origin —tags//传送所有标签
//删除标签
git tag -d v1.0 //删除本地标签 git push origin :refs/tags/v1.0//删除远程标签
远程仓库:
-
添加删除远程仓库
git remote add origin path/*添加远程仓库,origin为远程仓库名字(此处pb代 表程仓库地址,clone克隆操作会自动使用默认的master和origin名字)*/ git remote rm origin//删除远程仓库 git remote//显示远程仓库的名字 git remote -v//显示远程仓库的地址
-
数据下载
git fetch origin/*抓取远程仓库中本地仓库所没有的信息,但只是讲远程的数据拉到 本地仓库,并没有自动合并到当前工作分支,只有当你去是最好准备,才能手动合并。*/ git pull origin//就可以自动合并了
-
数据上传
git push origin master//可以将本地仓库中的数据推送到远程仓库。 git remote show origin//查看某个远程仓库的详细信息。 git remote rename someRepo anotherRepo//修改某个远程仓库在本地的简称。
git分支:
-
创建新分支以及切换分支:
/*在切换分支的时候,要注意确保暂存区或者工作目录里,那些还没有提交的修改,他会 和你即将检出的分支产生冲突从而阻止git为你切换分支。切换分支的时候最好保持一个清 洁的工作区域。*/ git branch testing//这会在当前commit对象上新建一个分支指针。 git branch -d testing//删除testing分支 git checkout testing//切换到testing分支上 git checkout -b iss53/*同时也可以将上面两条指令合并,即在创建分支的同时生成 一个新的分支。*/
-
合并分支
git merge someBranch Fast forward:由于当前master分支所在的提交对象是要并入分支的直接上游,Git只 需要把master分支指针直接右移即可。 分叉处在不在两个分支的末尾处,此时git会用分支的末端以及他们的共同祖先以及他们的 共同祖先进行一次简单的三房合并计算。这个提交对象比较特殊,他有两个祖先。值得一 体的是Git可以自己裁决哪个共同祖先才是最佳合并基础。
-
分支管理
git branch//查看所有分支 git branch -v//查看各个分支最后一个提交对象的 git branch —merger//查看那些分支已被并入当前分支 git branch —no-merger//查看哪些分支尚未合并的工作
需要进一步加强的点
要更加熟悉所有命令
其次要更加了解快照里到底是存储什么
最后整个git内部的整体结构是怎样的
图片描述[1]
图片描述[2]
图片描述[3]
图片描述[4]
图片描述[5]
图片描述[6]
图片描述[7]