[r]How To Use Git To Create A Key
怎样生成公钥(via)
工作流程
安装设置 git
下载最新版本的git
http://git-scm.com/downloads
当你安装完成git的时候,你需要简单的配置一下,打开终端:
用户名
第一步,你需要告诉git你的名字,这个名字会出现在你的提交记录中。
git config --global user.name "你的名字"
然后是你的Email,同样,这个Email也会出现在你的提交记录中,请尽量保持此Email和您的Git@OSC的注册Email一致。
git config --global user.email "你的Email"
Clone 和 Push
Clone 项目
git clone http://git.oschina.net/xxxxxx/xxxxxx.git
创建特性分支
git checkout -b $feature_name
写代码,提交变更
git commit -am "My feature is ready"
将你的提交推送到 Git@osc
git push origin $feature_name
在提交页面你可以查看你的变更,例如:
http://git.oschina.net/oschina/git-osc/commit/f3dd1c5bae48fa4244e2595a39e750e5606dd9be
创建一个 pull request
你可以fork任意的公开项目,当你修改了你fork的项目,你可以向源项目提交pull request。项目的作者在审阅过代码后可以决定是否将此变更应用到源项目。
SSH Keys
SSH key 可以让你在你的电脑和 Git @ OSC 之间建立安全的加密连接。
你可以按如下命令来生成sshkey
ssh-keygen -t rsa -C "xxxxx@xxxxx.com"# Creates a new ssh key using the provided email
# Generating public/private rsa key pair...
查看你的public key,并把他添加到 Git @ OSC http://git.oschina.net/keys
cat ~/.ssh/id_rsa.pub
# ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....
添加后,在终端(Terminal)中输入
ssh -T git@git.oschina.net
若返回
Welcome to Git@OSC, yourname!
则证明添加成功。
关于权限
访客
- 创建issue
- 评论
- Clone 和 Pull 项目
- 打包下载代码
- Fork 项目
- 创建 pull request
报告者
- 继承访客的权限
- 私有项目:不能查看代码
- 私有项目:不能下载代码
观察者
- 继承报告者权限
- 创建wiki
- 打包下载代码
- 私有项目:不能push代码
开发者
- 创建 issue
- 评论
- Clone 和 Pull 项目
- 打包下载代码
- 创建 pull request
- 创建分支
- 推送分支
- 删除分支
- 创建标签(里程碑)
- 创建 wiki
管理员
- 创建 issue
- 评论
- Clone 和 Pull 项目
- 打包下载代码
- 创建 pull request
- 创建分支
- 推送分支
- 删除分支
- 创建标签(里程碑)
- 创建 wiki
- 添加项目成员
- 强制推送分支
- 编辑项目属性
项目组管理员
- 编辑项目组属性
- 增加成员
- 添加/删除项目
- 设置项目组管理员
- 删除项目组
- 更改成员项目权限
Git @ OSC Flavored Markdown
Git @ OSC 的markdown基于原markdown做了一下扩展,具体使用如下。
You can use GFM in:
- 提交消息
- 评论
- issues
- pull requests
- 里程碑
- wiki 页面
跟传统的Markdown的区别
URL 自动链接
插入的URL不需要做特殊处理,会自动变成链接。
Emoji表情
支持Emoji表情,参考:Emoji cheat sheet
插入代码片段
可以向如下这种方式插入代码片段,可以在标记后面指定编程语言,如果没有指定语言,编译器会尝试自动识别。
```ruby
require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html
```
将会变成
require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html
特殊的 Git@osc 引用。
GFM 可以识别一些特殊的标记,并且支持自动补全,例如:
- #123 (Issue)
- !123 (Pull Request)
- 1234567 (提交)
- :icon: (emoji 表情)
如何导入外部的Git仓库?
因为一些原因暂没有开放一键导入功能。
有需求的可以先按照如下步骤导入其它地方的git仓库(以 github 上的 impress.js 为例):
1. 从原始地址 clone 一份 bare 仓库:
git clone --bare https://github.com/bartaz/impress.js.git
3. 以 mirror 的方式把刚才 clone 的项目 push 到 GIT@osc 上: (如果提示输入 git 用户密码,请到 http://git.oschina.net/keys 添加 SSH Key)
cd impress.js.git
git push --mirror git@git.oschina.net:username/impress-js.git
这种方式的好处是:可以完整地保留原项目的所有 branch 和 tag 信息。
提示:首次push内容量较大,推荐采用ssh方式push,传输更快,更稳定,如果项目较小,也可以采用http方式push。
更多导入办法,请点击这里
项目组的使用
项目组可以使用户更加方便的添加用户到项目中
1. 创建项目组:http://git.oschina.net/teams/new
2. 添加用户:可以设置两种权限,一种是用户默认在项目中的权限,一种是项目组管理权限
3. 指派到项目:如果选择开发者,那么将会按照用户在项目组中的默认权限为项目添加;如果选择管理员,那么项目组中的所有成员将会成为项目的管理员
4. 撤销项目:撤销项目将会把在项目属于项目组中的成员移除,如果成员同样存在于此项目别的项目组中,那么将会更新为别的项目组中的相应的项目权限。
Tips
项目组只有项目组的成员可以访问
项目组的名称是全站唯一的
一个用户存在于两个项目组a,b中,在a中的项目权限是管理员,在b中的项目权限是开发者,如果项目组a,b同时指派到项目pro,那么将项目组a从pro中移除之后,此用户在pro中的权限将会从管理员降为开发者。
继续阅读
你可以点击这里阅读权威的git书籍ProGit
以下为收集的开源中国社区热心网友制作的git@osc跟各种IDE,软件的集成办法,可以点击查看:
衷心感谢网友 @nekocode @铂金便便 @恺哥 @彼岸花开花落时 @whaon @小小程序员 @老左 @司马奔@枫叶飘零 @大漠真人细心整理分享资料。
[r]How To Use Git To Create A Key的更多相关文章
- git之生成SSH key
git之生成SSH key SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定.利用 SSH 协议可以有效防止远程管理过程中的信 ...
- Git安装及SSH Key管理之Windows篇
一.安装环境 1.本机系统:Windows 10 Pro(64位)2.Git版本:Git-2.11.0-64-bit.exe(64位) 二.Git安装 去官网下载完后一路下一步完成安装,如下图: ...
- git之create local reposition(创建本地仓库)
1.创建名为git-reposition的仓库 mkdir home/sunjf/git-reposition 注:home/sunjf可以指定为你想要的路径下面 2.初始化仓库 cd ~/git-r ...
- git rm -r --cache命令 及 git .gitignore 文件
git 的 .gitignore 文件的作用是在代码提交时自动忽略一个文件.不将其纳入版本控制系统. 比如.一般我们会忽略IDE自动生成的配置文件等. 如果一个你要忽略的文件已经纳入到了git ,也 ...
- Git bash 配置ssh key
问题描述 昨天为了配置Qt create中的Git,把我一直在使用的Github删除了,今本以为,这样git的一些配置还在,可是,今天上传一些提交的时候,提示我,git没有密钥.梳理一下,这个简单的配 ...
- sql server create foreign key
in table design view(right click table and choose design), right click on a column, and select 'rela ...
- 关于 git 本地创建 SSH Key 遇到的一点问题(①file to save the key & ②the authenticity of host...)
背景 由于想测试一下 SSH Key 创建的路径(.ssh 目录路径)对于不同位置 git 项目是否有效. 比如,.ssh 默认在 C:\[users]\[username] 目录下,而项目 proj ...
- Git permission denied(public key) 解决方法
1. 在Linux上: # ssh-keygen ##一定用 id_rsa.pub # cat /root/.ssh/id_rsa.pub 2. copy 整个文件内容到剪切板 3. 打开 ...
- 生成git,ssh的key
git clone ssh 代码: 报错: Warning: Permanently added 'gitee.com,120.55.226.24' (ECDSA) to the list of kn ...
随机推荐
- poj 1383 Labyrinth【迷宫bfs+树的直径】
Labyrinth Time Limit: 2000MS Memory Limit: 32768K Total Submissions: 4004 Accepted: 1504 Descrip ...
- [CF 351B]Jeff and Furik[归并排序求逆序数]
题意: 两人游戏, J先走. 给出一个1~n的排列, J选择一对相邻数[题意!!~囧], 交换. F接着走, 扔一硬币, 若正面朝上, 随机选择一对降序排列的相邻数, 交换. 若反面朝上, 随机选择一 ...
- 【转】jQuery列表拖动排列-jquery list dragsort插件参数和使用方法
转自:http://www.itokit.com/2014/0820/75058.html 我们在编辑页面元素排序的时候,我推荐使用jquery插件:dragsort. dragsort官网地址:ht ...
- 不要在精确计算中使用float和double类型
http://blog.csdn.net/androiddevelop/article/details/8478879 一 问题描述 float和double类型不能用于精确计算,其主要目的是为了科 ...
- C语言堆内存管理上出现的问题,内存泄露,野指针使用,非法释放指针
C语言堆内存管理上出现的问题,内存泄露,野指针使用,非法释放指针 (1)开辟的内存没有释放,造成内存泄露 (2)野指针被使用或释放 (3)非法释放指针 (1)开辟的内存没有释放.造成内存泄露,以下的样 ...
- Android自定义drawable(Shape)详解
在Android开发过程中,经常需要改变控件的默认样式, 那么通常会使用多个图片来解决.不过这种方式可能需要多个图片,比如一个按钮,需要点击时的式样图片,默认的式样图片. 这样就容易使apk变大. 那 ...
- centos安装g++
安装: yum -y install gcc automake autoconf libtool make 安装g++: yum install gcc gcc-c++
- UITableView的简单应用介绍
创建一个tableView视图,然后把这个视图界面添加到主界面上. _tableView = [[UITableView alloc]initWithFrame:CGRectMake(0, 20, [ ...
- LINQ高级编程 笔记
相关资料:http://www.cnblogs.com/lifepoem/archive/2011/12/16/2288017.html 1.什么是LINQ 语言集成查询是一系列标准查询操作符的集合, ...
- CSS3渐变(Gradients)-线性渐变
CSS3渐变(Gradients)可以让你在两个或多个指定颜色之间显示平稳的过度,包括透明度. 以前,你必须使用图像来实现这些效果.但是,通过Css3渐变(Gradients),你可以减少下载的事件和 ...