gitHub
来源:互联网 发布:人工智能建模 编辑:程序博客网 时间:2024/06/06 02:02
0.创建organiazation orgnazation创建仓库到(他人创建的开源项目 则不需要仓库)
已经有一个develop master
1.然后我初始化仓库(按github上)
我就有一个本地仓库对应远程源仓库
然后我就作为这个项目的管理人
之后如该有 pull request 则我受理
2.fork到自己 有一个master
3.到某文件夹终端git clone ......
加上管理员的仓库 就有两个了
4.进入该文件夹
5.git branch 查看本地分支 git branch -a 查看全部
-r 查看远程
6.it checkout -b xxx 创建新分支
git checkout xxx切换分支
在新建分支工作
$ git push origin test:master // 提交本地test分支作为远程的master分支xx
$ git push origin test:test // 提交本地test分支作为远程的test分支 xx
7.修改或添加文件
新建文件a; git add a / git commit 提交到当前分支
git add . 将所有修改过的工作文件提交暂存区
修改b git commit -a
8.git push -u origin develop # 首次将本地develop分支提交到远程develop分支,并且track(-u)
9.develop分支开发完善 再把远程develo ppull到本地 master
10.确认 ok后
git push origin master(远程分支
11.这使远程 本地两个分支都相同了
12.pull 一般也从develop分支pul
git pull origin develop
本地两个分支 develop origin
分别对应 远程origin develop
然后合并本地
13.其他如
回滚冲突 则相应的查找解决方法
常用git status
管理员提交pull request
经过测试以后,觉得没问题,就可以请求管理员把自己仓库的develop分支合并到源仓库的develop分支中,这就是传说中的pull requestgit diff显示目录下文件与git 版本下文件区别
14 git branch --set-upstream master origin/master
设置master 对应远程master
15.回滚
git reset --hard commit-id :回滚到commit-id,讲commit-id之后提交的commit都去除
git reset --hard HEAD~3:将最近3次的提交回滚
回滚本地也修改了
15.1.暂存区 add过但未提交2.当前文件
3.版本库 提交commit过的
16git push -u origin master # 客户端首次提交
git push -u origin develop # 首次将本地develop分支提交到远程develop分支,并且track(-u)
17git pull =git fetch+merge to local
18作为项目管理人则还需要在他的本地测试新建一个测试分支,测试我的代码:
>> git checkout develop # 进入他本地的develop分支 >> git checkout -b livoras-develop # 从develop分支中分出一个叫livoras-develop的测试分支测试我的代码 >> git pull https://github.com/livoras/git-demo.git develop # 把我的代码pull到测试分支中,进行测试 (livoras是非管理员开发者)
判断是否同意合并到源仓库的develop
中,如果经过测试没问题,可以把共同开发者的代码合并到源仓库的develop
中:
>> git checkout develop >> git merge --no-ff livoras-develop >> git push origin develop
使用--no-ff参数后,会执行正常合并,在Master分支上生成一个新节点。
19.git branch -d xxx 删除功能性分支
git remote add origin git@ github:robbin/robbin_site.git # 添加远程仓库地址
命令http://www.cnblogs.com/cspku/articles/Git_cmds.html
开发流程http://www.kuqin.com/shuoit/20141213/343854.html
git 手册http://www.ihref.com/read-16369.html#2.4
更新fork的分支 一个是merge原仓库
另一个是从原仓库pull 再push到自己
更新 https://cnodejs.org/topic/53c27320400ca4581b90033c
关于pull request冲突
http://99jty.com/?p=1307
http://my.oschina.net/maliang0130/blog/261756?p=1
(git 是比较实际内容的 所以直接将冲突的地方删除修改也可以)
git log 查看别人提交修改的详情
例:commit a6b0b2c961c8cb57332e32b7b4357e42a05f5f0a
Merge: 9dca2bc 4257eb9
Author: Kevin-Soleil <uestckk@163.com>
Date: Tue Apr 21 20:25:09 2015 +0800
Merge pull request #7 from Kevin-Soleil/master
workshow
关于ssh key (生成ssh key简单略)
cd ~/.ssh
就有公钥 和密钥
id_rsa id_rsa.pub
ssh-add id-rsa 添加密钥
将公钥添加到 https://github.com/settings/ssh
赋予通信权限
ssh工作原理
需要依靠密匙,也就是你必须为自己创建一对密匙,并把公用密匙放在需要访问的服务器上。如果你要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求用你的密匙进行安全验证。服务器收到请求之后,先在该服务器上你的主目录下寻找你的公用密匙,然后把它和你发送过来的公用密匙进行比较。如果两个密匙一致,服务器就用公用密匙加密“质询”(challenge)并把它发送给客户端软件。客户端软件收到“质询”之后就可以用你的私人密匙解密再把它发送给服务器。
- github
- github
- github
- GitHub
- github
- GitHub
- GitHub
- github
- github
- github
- github
- GitHub
- GitHub
- Github
- github
- github
- github
- GitHub
- 通过分析汇编代码理解计算机如何工作
- Qt QListWidget的使用
- 大型网站典型故障案例分析
- 实验室开学会议总结
- Java学习之线程锁--单例模式--synchronized
- gitHub
- 解题报告 之 POJ2782 Bin Packing
- 递归的概念与模型设计
- Android从Camera中获取图片的两种方法
- Android的activity跳转动画实现
- 容易理解的博文---MVC
- Ios NSString 转 NSNumber
- SSM + Shiro 整合 (1)- 实现 Spring 的 HelloWorld
- *LeetCode-Binary Tree Preorder Traversal