学习Github必须要会的知识

目的  

  托管项目代码


基本概念

仓库Respository

  存放项目代码,每个项目对应一个仓库,多个开源项目则有多个仓库。

收藏Star

  收藏项目,方便下次查看。

复制克隆项目Fork

  (深拷贝)

发起请求Fullrequest

  被fork对象接受到fork的修改,等待张三查看、合并。

关注Watch

  关注项目,当项目更新可接收到通知。

事务卡片Issue

  发现代码Bug,但是目前没有成型代码,需要讨论时用。

主页

Github主页

仓库主页

个人主页

学习Github必须要会的知识_第1张图片


git

工作区域

向仓库中添加文件流程

基本信息设置

设置用户名和邮箱

初始化仓库步骤

学习Github必须要会的知识_第2张图片

  1. cd test
  2. git init
  3. git add a1.php
  4. git status
  5. git commit -m 'add a1.php'
  6. git status

    修改仓库

  7. vim a1.php
  8. git add a1.php
  9. git commit -m '第一次修改文件并提交到仓库'

    删除仓库文件

  10. rm -rf a1.php//本地删除
  11. git rm a1.php//从git暂存区中删除
  12. git commit -m '提交描述'

    远程仓库管理

  13. git clone 仓库地址//复刻
  14. git push//本地仓库更新到远程//第四步

    Github Pages搭建网站

  15. 访问https://用户名.github.io
  16. 搭建步骤
      新建仓库名:用户名.github.io
  17. 新建文件index.html


.gitignore

作用

  在.gitignore添加了某个文件之后,这个文件就不会上传到github上被别人看见。

.gitignore 文件的格式规范如下:

  • 所有空行或者以 # 开头的行都会被 Git 忽略。
  • 可以使用标准的 glob 模式匹配。
  • 匹配模式可以以(/)开头防止递归。
  • 匹配模式可以以(/)结尾指定目录。
  • 要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(!)取反。

    所谓的 glob 模式是指 shell 所使用的简化了的正则表达式。

  • 星号(*)匹配零个或多个任意字符;
  • [abc]匹配任何一个列在方括号中的字符(这个例子要么匹配一个 a,要么匹配一个 b,要么匹配一个 c);
  • 问号(?)只匹配一个任意字符;
  • 如果在方括号中使用短划线分隔两个字符,表示所有在这两个字符范围内的都可以匹配(比如 [0-9] 表示匹配所有 0 到 9 的数字)。
  • 使用两个星号() 表示匹配任意中间目录,比如a//z可以匹配 a/z, a/b/z 或 a/b/c/z等。
/mtk/              
#过滤整个mtk文件夹
*.zip               
#过滤所有.zip文件
/mtk/do.c        
#过滤/mtk/do.c文件

fd1/*      
#忽略目录 fd1 下的全部内容

/fd1/*    
#忽略根目录下的 /fd1/ 目录的全部内容;

!/fw/bin/
!/fw/sf/             
#不忽略 根目录下的 /fw/bin/ 和 /fw/sf/ 目录;

Git在添加.gitignore之前就push了项目

(为避免冲突可以先同步下远程仓库 $ git pull)

  1. 在本地项目目录下删除暂存区内容: $ git rm -r --cached .

  2. 新建.gitignore文件,并添加过滤规则(用文本编辑器如Notepad++)

  3. 再次add文件,添加到暂存区

  4. 再次commit提交文件

  5. $ git commit -m “add .gitignore”

  6. 最后push即可

注意事项

  • 命令和注释别在同一行,如*.txt #注释txt这样会导致这一行无法被识别
  • git add .之前如果有改动.gitignore一定要 执行 git rm -r --cached .
  • 合理使用.gitignore可以避免无用文件的上传,也可以防止重要配置信息的泄露

你可能感兴趣的:(学习Github必须要会的知识)