美文网首页
Git&GitHub(复习一下)

Git&GitHub(复习一下)

作者: 冰菓_ | 来源:发表于2022-06-27 19:35 被阅读0次

git,正则表达式,shell脚本,这三个玩意......学了忘,忘了学,还记不住,非常抽象

1. 使用git之前需要做的最小配置

配置user.name 和 user.email
git config --global user.name 'name'
git config --global user.email 'email'
config的三个作用域
缺省值等于 local
git config  --local  只对某个仓库有效
git config  --global  对当前用户所有仓库有效
git config  --system  对系统所有登陆的用户有效


显示config的配置 ,加 --list
例如: git config --list --local

local的优先级比global的优先级要高的

2. 初始化仓库

git init

3. 提交

工作目录 --> 暂存区 --> 版本历史

touch index.html
git status -- 查看仓库当前的状态,显示有变更的文件
git add index.html --添加文件到暂存区
git status 
git commit -m 'add index.html'  -- 提交暂存区到本地仓库
git log -- 查看历史提交记录

echo 'abc' >> index.html 
git diff 比较文件的不同,即暂存区和工作区的差异
git status
git add u
git commit -m 're index.html' 

4. 给文件重命名

  1. 危险的操作
mv index.html index.md
git add index.md
git add status
git rm index.html

2.git mv

git mv index.html index.md
git status 
git commit -m'rename index.html index.md'

5. log版本历史

git log 无参数
git log --pretty=oneline  漂亮的查看
git log -p -1  展开显示每次提交的内容差异, 用 -1 则仅显示最近的两次更新
git log --stat  显示简要的增改行数统计
git log常用参数

贴个链接挺全的,学习一下:git log 的使用

6. .git目录有什么

Git目录为什么这么大

7. 数数tree的个数

git init git_doc
mkdir doc
touch doc/readme
echo 'abc' >> doc/readme
git add doc
git status 
git commit -m 'add doc'
find .git/objects/ -type f  查看有什么
git cat-file -t e69de29  查看类型
git cat-file -p e69de29  查看内容

一共两个数,一个doc,一个readme ,然后四条记录,其余两条分别是 commit和readme的内容blob

BLOB、Commit和Tree组件

8. 分离头指针

HEAD指针不再指向分支,而是直接指向某个commit
Git操作 — 67.分离头指针状态

9.进一步理解HEAD和branch

HEAD、master 与 branch
HEAD指的就是 .git/HEAD 文件,它存储着当前working directory所处的某次commit

 git branch 查看有哪些分支
 git checkout -b newmaster master  创建一个分支,并切换到分支
 cat .git/HEAD 查看HEAD指向哪里

 git diff HEAD HEAD^1 比较HEAD和HEAD的父节点

10. 怎么删除不需要的分支

HEAD 指向的 branch 不能删除。如果要删除 HEAD 指向的 branch,需要先用 checkout 把 HEAD 指向其他地方

git branch -av 查看分支
git checkout -b git rebase

11. 修改最近一次的commit的message

git commit --amend
git log

12. 修改老旧的commit的message(开发不用)

git rebase i  名称

13. 怎么把连续的commit整合

Git 合并多个 commit,保持历史简洁

git rebase i  名称

14. 怎么把间隔的commit整合

15. 怎么比较暂存区和HEAD所指commit的差异

vi readme.md
git add readme.md
git diff --cached 

16. 怎么比较工作区和暂存区

Git:git diff 命令详解

17. 如何把暂存区恢复成和HEAD一样的内容

git reset HEAD
git diff --cached 

18. 如何让工作区的文件恢复为暂存区(开发不用)

git checkout file

19. 如何把暂存区部分文件恢复成和HEAD一样的内容

 git reset  HEAD  file

20. 消除最近几次commit(开发不用)

 git reset --hard  commitid

21. 看不同提交的指定文件的差异

git diff commitid commitid
git diff  temp  master
git diff commitid commitid -- <file>

22. 正确删除文件

 git rm file

23. 开发中临时加塞了紧急任务

git stash 先把已经修改的文件存起来
git stash pop  将代码追加到最新的提交之后

git stash详解
一次git stash pop引发的血案

24. 如何指定不需要git管理的文件

添加.gitignore文件

25. git的备份

26. GitHub关键概念

  1. 提交(commit)
    无论何时你将一个或多个文件修改保存到Git的历史记录,你都会创建一个新的提交
  2. 提交消息(commit message)
    每次做出提交时,你需要提供一个消息,描述为什么要进行这种改动,当以后试图理解为什么实现特定的修改时,提交的这一消息是非常有用的
  3. 分支(branch)
    就是存放在一侧的独立的系列提交,你可以使用它来进行一个实验或者创建一个新的功能
  4. 主分支(master branch)
    无论你什么时候创建一个新的Git项目,都会创建一个默认的分支,称为主分支,这个分支一旦准备发布,你的工作则应完全停止
  5. 功能分支(feature branch)
    无论何时构建一个新的功能,都将创建一个分支,称为功能分支
  6. 发布分支(release branch)
    如果你有一个手动QA(质量管理)流程,或者为满足客户需求而必须支持旧版本的软件.你需要一个发布分支以存放必要的补丁或者更新记录.功能分支和发布分支没有任何技术差别,但是在和团队讨论项目时,区别两者时有用的
  7. 合并(merge)
    合并是将一个分支完成的全部工作归并到另一个分支,通常情况下是将一个功能分支合并到主分支
  8. 标签(tag)
    引用一个特定历史的提交.最常用于记录发布版本,据此你可以知道发布的是哪个版本的代码以及何时生成
  9. 查看(check out)
    找到一个不同版本的项目历史记录,以及时查看该时间点的文件
  10. 拉请求(pull request)
    最初,拉请求是用来请求别人复查已经完成的分支工作,并将它合并到主分支,现在,拉请求常用于在一个流程的早期阶段,用于讨论可能的功能
  11. 提出问题(issue)
    GitHub中有一个称为提出问题的功能,可以用来讨论功能,跟踪缺陷,或者两者兼备
  12. 维基(wiki)
    一个轻量级的web页面创建方式
  13. 克隆(clone)
    通常你要从GitHub下载一个项目的副本,这样你可以在本地工作
  14. 分叉(fork)
    有时候那你不具备改变一个项目的必要许可,如果你想对这样的一个项目提交修改,首先在GitHub上用你的用户账号复制这个项目.然后你可以克隆,修改,并使用拉请求将其提交回最初的项目

27. 配置GitHub的公钥私钥

git 之 配置github公钥私钥

28. 把本地仓库同步到GitHub

git学习-如何将本地项目上传(同步)到github远程仓库

29. 查看GitHub

  1. 项目页面介绍
  2. README.md文件
    该文件的内容将显示在项目主页上文件夹和文件列表的正下方,该文件提供了项目说明和其他额外信息
  3. 提交历史
    提交历史是一个了解最新工作单元的很好的方法,这些小工作单元已经在任何给定的分支上完成
  4. 拉请求
    拉请求可使得你了解当前正在进展的工作
  5. 问题
    查看问题,可以使得你更广泛的了解一个项目任需要做的优秀工作
  6. 脉冲
    近期活动
  7. 图表

30. 不同人修改了不同文件如何处理

git实操系列之不同人修改了不同的文件处理问题

31. 不同人修改了相同文件的不同区域如何处理

32. 不同人修改了相同文件的相同区域如何处理

33. 同时变更文件名和文件内容如何处理

34. 把同一文件修改成了不同的文件名如何处理

35. 禁止向集成分支执行 push -f命令

36. 禁止向集成分支执行变更历史的操作

37. GitHub有哪些核心功能

38. 快速淘到感兴趣的开源项目

git学习: xirong/my-git: Individual collecting material of learning git

39. 为何需要组织类型的仓库

40. 创建团体的项目

41. 怎么选择适合团队的工作流

42. 如何挑选合适的分支集成策略

43. 启用issue跟踪需求和任务

44. 如何使用project管理issue

45. 项目内部怎么实施code review

46. 团队协作如何做多分支的集成

47. 怎么保证集成的质量

48. 怎么把产品包发布到GitHub

49. 怎么给项目增加详细的指导文档

50. GitLab上怎么做项目管理

51. GitLab上怎么做code review

52. GitLab上怎么保证集成的质量

相关文章

  • Git&GitHub(复习一下)

    git,正则表达式,shell脚本,这三个玩意......学了忘,忘了学,还记不住,非常抽象 1. 使用git之前...

  • 上传本地项目到github

    Create a local repository and upload it to git&github 1. ...

  • Git&Github的初始化操作1

    本文为转载,查看原文请参考末尾链接根据Git&Github的初始化操作1,本人在Git&Github的初始化操作2...

  • GitHub使用技巧

    Git&GitHub秘籍 https://github.com/tiimgreen/github-cheat-sh...

  • Git&GitHub

    path命令 告诉命令行去哪找命令 命令行的使用规则 命令名 子命令 -p --param --parm2=xxx...

  • Git&GitHub

    基本命令行 什么是命令行 GUI(Graphical user interface) Cli(Command-li...

  • Git&GitHub

    本文章著作权归小圆和饥人谷所有,转载须说明来源 Github Githhub账号 Linux命令 在学习使用git...

  • Git&GitHub

    Git 是什么 Git是一个版本管理控制系统(缩写VCS),它可以在任何时间点,将文档的状态作为更新记录保存起来,...

  • git&github入门

    创建github仓库 1.打开github网站:网址2.注册并登录;3.选中New repository,创建一个...

  • Git&Github笔记

    都是自己看视频学习资料总结的,欢迎大家浏览指正托管中心维护远程库 内网:可以自己搭建一个GitLab服务器 外网:...

网友评论

      本文标题:Git&GitHub(复习一下)

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