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也会出现在你的提交记录中,请尽量保持此Email和您的[email protected]的注册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 "[email protected]"# 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 [email protected]

若返回

Welcome to [email protected], 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

2. 在 GIT@osc 上 创建一个项目

3. 以 mirror 的方式把刚才 clone 的项目 push 到 GIT@osc 上: (如果提示输入 git 用户密码,请到 http://git.oschina.net/keys 添加 SSH Key)

cd impress.js.git
git push --mirror [email protected]: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

以下为收集的开源中国社区热心网友制作的[email protected]跟各种IDE,软件的集成办法,可以点击查看:

衷心感谢网友 @nekocode @铂金便便 @恺哥 @彼岸花开花落时 @whaon @小小程序员 @老左 @司马奔@枫叶飘零 @大漠真人细心整理分享资料。

时间: 2024-10-05 18:41:42

How To Use Git To Create A Key的相关文章

解决git本地多ssh key的问题

最近手上一个项目需要使用到一台服务器作为专用的部署服务器,在实施过程中遇到了一些问题,具体如下: 1. 服务器的ssh默认端口和项目git仓库的ssh端口不一致 2. 部署需要使用项目提供的ssh key,不能使用服务器本身的默认ssh key 这些问题都被顺利解决了,这里特记录一下,防止遗忘. 针对上述问题,下面主要从这三个点来记录解决方案. 如何生成ssh key 如何使用特定ssh端口从git仓库拉取项目 如何使用特定密钥文件从git仓库拉取项目 一.生成 ssh key 系统默认的ssh

Git安装及SSH Key管理之Windows篇

一.安装环境 1.本机系统:Windows 10 Pro(64位)2.Git版本:Git-2.11.0-64-bit.exe(64位) 二.Git安装 去官网下载完后一路下一步完成安装,如下图: 安装完后先在系统环境变量中看下是否配置 然后在桌面右击鼠标,选择Git bash here,然后输入下面代码: git --version #验证git是否安装成功,输出版本号就代表安装成功 如下图: 安装完成有配置一下全局的用户名和邮箱,输入如下命令: git config --global user

Create Primary Key using Entity Framework Code First

原文:http://www.codeproject.com/Articles/813912/Create-Primary-Key-using-Entity-Framework-Code-Fir Introduction This article describes the effect of Entity Framework Code First convention and configuration for creating Primary Key column. Entity Framew

Git安装及SSH Key管理之Mac篇

1.下载git客户端,下载地址为:https://git-scm.com/download/mac 2.打开安装包,可以看到此时的界面为: 我们需要把.pkg的安装包安装到系统当中.我双击了安装包之后,结果无法安装成功.界面为: 这里是一个坑,虽然是很简单的问题的,但是对于新手而言有时候还是头疼的.后来,在网上终于找到原因,由于这个需要权限,所以直接点击安装是无法成功的.方式是按住control键之后,再点击pkg文件.这个时候会弹出安装程序的界面.如 所示.然后选择打开,就可以完成安装了. 3

git之create local reposition(创建本地仓库)

1.创建名为git-reposition的仓库 mkdir home/sunjf/git-reposition 注:home/sunjf可以指定为你想要的路径下面 2.初始化仓库 cd ~/git-reposition    //进入仓库目录 git init   //初始化仓库 此时,在仓库中会产生.git文件,因为为隐藏文件,需要通过ls -ah查看 3.在仓库中建readme.txt文件,并添加内容 touch readme.txt   //创建readme.txt文本 sudo vim

SQL - Create Foreign Key Relationships

/* To create a foreign key in a new table */ CREATE TABLE Sales.TempSalesReason ( TempID int NOT NULL, Name nvarchar(50), CONSTRAINT PK_TempSales PRIMARY KEY NONCLUSTERED (TempID), CONSTRAINT FK_TempSales_SalesReason FOREIGN KEY (TempID) REFERENCES S

【Git学习】SSH key 和 Git 多账户配置

转载请注明:http://blog.csdn.net/lrs123123/article/details/46917981 可能很多人用Git会遇到这样一个问题,在公司电脑使用了Git,然后回到家之后发现git用不了 原因很简单,你需要配置你这台电脑的git秘钥,这也是本篇要介绍的内容 本篇讲的是通过ssh去拿git项目,所以我们需要去配置SSH 秘钥 首先,来到命令行,输入git ,出现像如下界面,说明你的git环境正确 接下来,我们先告诉Git我们的名字还有邮箱  自报家门 接下来,我们需要

win10 git 报错 Host key verification failed

从code.aliyun.com切回github 原先的known_hosts里记录的是code.aliyun.com的ip,必须新加一个github的. known_hosts报错Host key verification failed. powershell用多了,stackoverflow上的解决办法一个都没用. 切记,win10必须在git bash下运行下面的命令,cmd powershell里面运行都不管用. ssh -T [email protected] 选择yes 添加信任.

关于 git 本地创建 SSH Key 遇到的一点问题(①file to save the key & ②the authenticity of host...)

背景 由于想测试一下 SSH Key 创建的路径(.ssh 目录路径)对于不同位置 git 项目是否有效. 比如,.ssh 默认在 C:\[users]\[username] 目录下,而项目 project 在 D:\ 目录.测试结果是依然有效,即 .ssh 在 C:\[users]\[username] 目录下时,在其他位置 push 时无需进行密码认证(测试时项目以 SSH clone). PS:测试前已经将远程仓库托管平台公钥配置好. 事件1(file to save the key) 在