借助github托管项目代码。
github desktop管理:https://www.jianshu.com/p/5fa37effa3a3
一 基本概念
1.仓库 (Repository)
仓库用来存放项目代码,每个项目对应一个仓库,多个开源项目则有多个仓库;
2.收藏 (Star)
收藏项目,方便下次查看;
仓库主页Start按钮,意思为收藏项目的人数;
3.复制克隆项目 (Fork)
该fork的项目时独立存在的;
4.发起请求 Pull Request
发起请求,这个其实是基于Fork的。
5. 关注 Watch
如果你watch了某个项目,当项目更新时会接收到通知;
6.事务卡片 (Issue)
发现代码BUG,但是目前没有成型代码,需要讨论时用;
7. Github主页 :账号创建成功进入github主页信息;该页左侧主要显示用户动态以及关注用户;右侧显示所有的git库
8. 仓库主页:显示项目的信息
9.个人主页:头像,个人简介,关注我的人等信息;
10.收藏(star)
二 注册github账号
1. 官方网址:https://github.com/
sign up注册,
3. 特别说明
1.需要
2.私有仓库只能自己或者指定的朋友才有权限操作(私有仓库收费);
3.注册新的用户需要验证邮箱才可以使用(需要设置白名单);
a 创建仓库
"Start a project"建立一个仓库
b.管理仓库
仓库主页说明:一个git仓库对应一个开源项目;通过git管理git仓库;
三 使用Github仓库管理
(1)仓库管理
新建、 编辑、 删除、上传、检索、下载文件、项目
(2)Github Issues
作用:发现代码BUG。但是目前没有成型代码,需要谈论时使用;或者使用开源项目出现问题时使用;
情景: 张三发现李四开源git库,则发提交了一个issue,李四隔天登录在github主页看到通知并和张三交流,最后关闭issue;
(3)开源项目贡献流程:
方式一: 新建Issue : 提交使用问题或者建议或者想法
方式二: Pull Request
- step1.fork项目 ;
- step2.修改自己仓库的项目代码
- step3.发起Pull request;
- step4.等待作者操作审核;
四 安装Git以及使用
目的:通过git管理Github托管项目代码
1. 下载安装:
git官网下载 或者(windows Git msysgit 64 位。)
2. Git基本工作流程:
(1) Git Repository
最终确定的文件保存到仓库,成为一个新的版本,并且对他人可见;
(2) 暂存区 暂存已经修改的文件最后统一提交到git仓库中;
(3) 工作区 (working Directory) 添加 编辑 修改文件等动作;
3.Git初始化及仓库创建和操作
1.设置用户名
git config --global user.name "用户名"
2.设置用户名邮箱
git config --global user.email "邮箱"
该设置在github 仓库主页显示谁提交了该文件
4.初始化一个新的Git仓库
(1).创建文件 mkdir rhtest
(2).在文件内初始化git
git init
3. 向仓库添加文件
touch index.html
git status #查看当前状态
4. 添加到暂存区
git add index.html
5. 修改仓库文件 描述
git commit -m '修改了文件'
6. 删除文件
rm index.html
7. 从Git中删除文件
Git rmindex.html
8. 提交操作
git commit -m 提交描述
Git管理远程仓库
1. 使用远程仓库的目的
作用:备份,实现代码共享集中化管理;
2.Git克隆操作
目的:将远程仓库(github对应的项目)复制到本地;
3.git clone 仓库地址
git config --list
4.clear 清空
进入文件 vi a1.php
git add a1.php
git commit -m '第二次提交'
git status
git push
git的一些基础命令
一般配置
git --version //查看git的版本信息
git config --global user.name //获取当前登录的用户
git config --global user.email //获取当前登录用户的邮箱
登录git
/* 如果刚没有获取到用户配置,则只能拉取代码,不能修改 要是使用git,你要告诉git是谁在使用*/
git config --global user.name 'userName' //设置git账户,userName为你的git账号,
git config --global user.email 'email'
创建一个文件夹
mkdir nodejs //创建文件夹nodejs
cd nodejs //切换到nodejs目录下
初始化git仓库
git init //在nodejs文件夹下初始化一个仓库,此时文件里会到一个.git的隐藏文件夹
创建忽略文件
touch .gitignore //不需要服务器端提交的内容可以写到忽略文件里
/*
.git
.idea
*/
查看目录
ls -al
创建文件并写入内容
- 如果文件不存在则会创建文件
echo "hello git"
> index.html //将'hello git' 写入到index.html中
单个>箭头表示写入, >>表示追加
查看文件内容
cat index.html
增加到暂存区中
git add index.html
git add -A //全部添加到缓存区
增加到版本库中
git commit -m '备注信息'
查看版本
git log --oneline
比较差异
- 比较的是暂存区和工作区的差异
git diff
- 比较的是暂存区和历史区的差异
git diff --cached
- 比较的是历史区和工作区的差异(修改)
git diff master
撤回内容
- (如果修改了工作区的文件后发现改错了,可以用暂存区或者版本库里的文件替换掉工作区的文件)
git checkout index.html
取消增加到暂存区的内容(添加时)
git reset HEAD index.html
//显示目录的状体 有没有添加或者修改文件
git status
删除本地文件
rm fileName
删除暂存区
- 保证当前工作区中没有index.html
git rm index.html --cached
使用--cached 表示只删除缓存区中的内容
回滚版本
- 回滚最近的一个版本 git log
git reset --hard HEAD/commit_id
回滚到未来
git reflog
分支管理
创建分支
git branch dev
切换分支
git checkout dev
创建分支并切换分支
git checkout -b dev
删除分支
git branch -d dev
在分支上提交新的版本
git commit -a -m 'dev1'
合并分支
git merge dev
分支的合并后显示log
git log --oneline --graph --decorate
在分支开发的过程中遇到其他问题需要切换其他分支
- 保留写好的内容在切换到主干
- 保留内容
git stash
在次切换分之后需要应用一下保留的内容
git stash apply
丢掉保存的内容
git stash drop
使用并丢掉
git stash pop
最佳分支
-有的时候开发需要合并指定的内容,而不是合并所有的提交,所以我们需要挑选最好的,自己生产版本
合并分支把树杈掰到主干上
git rebase
添加远程的仓库
push -u
-u参数 upstream
git push origin master -u //获取最新代码
连接远程仓库
git remote add origin 仓库的地址
查看远程仓库
git remote -v
删除远程仓库
git remote rm origin
参考:
- 使用Git命令把本地项目上传到Github托管
- 在GitHub上创建和托管个人网站(上)
- 在GitHub上创建和托管个人网站(下)
使用Git命令把本地项目上传到Github托管