github

github

使用github托管项目

基本概念

仓库(Repository)

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

复制克隆项目(Fork)

该fork项目是独立存在的

发起请求(Pull Request)

此操作是基于fork的,如上图,如果李四在test仓库上做了改进,想把自己的改进合并进原有的项目里(张三的test仓库),此时李四就可以发起一个Pull Request(PR),此时原有项目创建人(张三)就会收到这个请求,张三review并测试后,就可以接受李四的PR,此时原有项目(张三的test仓库)就会拥有李四进行改进的部分

事务卡片(Issue)

发现代码Bug,但是目前没有成型的代码,需要讨论时用。即别人发现你项目中有bug,或者哪些地方不够好,他就可以给你提Issue,然后你看到这些问题可以去逐个修复,修复完毕就可以close掉。

创建仓库

创建github账号后进行下列操作

1

2

3

仓库主页

git

git工作区域

Git Repository(git仓库)

最终确定的文件保存到仓库,成为一个新的版本

暂存区

暂存已经修改的文件最后统一提交到git仓库中

工作区(wroking directory)

添加、编辑、修改文件等操作

提交流程

工作区—>暂存区—>git仓库

下图中将hello.php和test.php文件传到Git仓库中

git status为查看当前状态

仓库与分支(branch)

获取远程Git仓库

git clone 项目地址

上述命令会新建一个一项目命名的新目录,进入此目录后,我们可以看见一个包含远程项目的拷贝,我们把这个拷贝叫做working tree,还有一个叫做.git的目录,.git目录中包含了此项目的所有历史信息。

切换不同版本的项目

git存储了项目的所有历史版本,这些版本在Git中被称为commit。

这些历史快照commit不一定都按照从最早到最新的顺序排列在同一行中;在git中,工作可以按着并行的算法(称为分支branch)进行,分支可以合并merge和分叉diverge。

git-branch

单个git仓库可以跟踪多个分支上的开发,它通过保留引用每个分支上的最新提交的头(heads)表来实现,git-branch 命令可以向你展示分支头的列表(branch heads)

git branch

此命令需在.git文件夹的同级目录上执行

git初始化(将文件上传到github

git安装完成后点击右键后再点Git Bash Here在终端窗口中输入下列命令

基本信息设置

1、设置用户名
git config --global user.name "用户名"

2、设置用户名邮箱
git config --global user.email "邮箱地址"

注:该设置在github仓库主页显示谁提交了该文件

初始化git(创建git仓库)

  1. 在要上传的文件夹的根目录下打开git bash后输入命令
    cd 文件夹名
    git init
  2. 将文件提交到暂存区
    git add 文件名

注:若想提交文件夹中所有文件则使用命令git add .

  1. 将文件从暂存区提交到仓库

    git commit -m "描述"

    描述内容根据个人需要进行输入,描述内容在github的显示如下

  2. 查看暂存区文件

    git status   //若出现nothing to commit证明提交成功
  3. git remote add origin github项目地址

    github项目地址

  4. git push origin master

提交代码至远端并合并

  1. 在本地新建一个分支dev(git add&&git commit后才有效)

    git branch dev
  2. 查看分支

git branch re
  1. 切换到本地分支进行文件上传

    git checkout dev  //切换到dev分支
    git add .  //上传文件夹内的所有文件到dev分支里
    git commit -m '注释'
  2. 切换到远程分支master并进行操作

    git checkout master
    git pull //拉取远程分支Master中的最新代码
    git merge dev
    git push

刷新分支 显示远程分支

git fetch

重置

git reset

传到远程固定分支上

git push origin :远程分支名

传到远程固定分支

git clone 项目地址
git fetch #更新分支
git branch -a #查看远程是否有目标分支
git checkout -b dev   #新建分支
-----进行开发------
git add 文件名
git commit -m “你想说的注释”
git push -u origin dev:远程分支

   转载规则


《github》 fightingtree 采用 知识共享署名 4.0 国际许可协议 进行许可。
  目录