git版本库视频教程及码云提供的使用文档

视频教程地址

常见冲突处理

安装设置 git ->马云帮助文档地址

下载最新版本的git

下载地址http://git-scm.com/downloads

当你安装完成git的时候,你需要简单的配置一下,打开终端:

简易的命令行入门教程:

我们强烈建议所有的git仓库都有一个README, LICENSE, .gitignore文件

Git 全局设置:

git config --global user.name "逸宸"
git config --global user.email "[email protected]"

创建 git 仓库:

mkdir uniapp_practice //创建目录
cd uniapp_practice //进入目录
git init //初始化一个仓库
touch README.md //创建一个文件
git add README.md //把文件加入缓冲区
git status //查看状态 文件显示红色=有内容发生改变了/绿色=在暂存区/没有文件代表已经提交成功或者没有待处理文件
git commit -m "first commit" //提交文件到本地仓库

//如果提交错误:error:failed to push some refs to。
git pull --rebase origin master // 需要执行把远程库合并更新到本地库

已有项目?

cd existing_git_repo //进入仓库目录

提交到远程仓库

git remote add origin https://gitee.com/wokaixin/uniapp_practice.git //给远程仓库地址命名
git push -u origin master  //提交项目

工作流程

首先、 CD 到项目路径 比如 cd d/cangku/20181204demo
目录不存在就用mkdir 创建目录,例如:mkdir cangku

1、告诉git你是谁-用户名

1.1、你需要告诉git你的名字,这个名字会出现在你的提交记录中。

git config --global user.name "你的名字"

Email

1.2、告诉git你的Email,同样,这个Email也会出现在你的提交记录中,请尽量保持此Email和您的码云的注册Email一致。

git config --global user.email "你的Email"

2、克隆项目到本地/推送项目到仓库

Clone 和 Push

2.1 Clone 克隆项目到本地

git clone http://gitee.com/xxxxxx/xxxxxx.git

2.2、创建特性分支

git checkout -b $feature_name

2.3、写代码,提交变更

git commit -am "My feature is ready"

2.4、将你的提交推送到 码云

git push origin $feature_name

2.5、在提交页面你可以查看你的变更,例如:

http://gitee.com/oschina/git-osc/commit/f3dd1c5bae48fa4244e2595a39e750e5606dd9be

3、 创建一个 pull request

你可以fork任意的公开项目,当你修改了你fork的项目,你可以向源项目提交pull request。项目的作者在审阅过代码后可以决定是否将此变更应用到源项目。

4 在码云上使用SVN

使用教程已经整理在这里


5 SSH Keys


SSH key 可以让你在你的电脑和 Git @ OSC 之间建立安全的加密连接。

5.1、生成sshkey-命令如下

ssh-keygen -t rsa -C "[email protected]"# Creates a new ssh key using the provided email
# Generating public/private rsa key pair...

5.2、查看你的public key,并把他添加到 Git @ OSC http://gitee.com/keys

cat ~/.ssh/id_rsa.pub
# ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....

5.3、添加后,在终端(Terminal)中输入

ssh -T [email protected]

5.4、若返回

Welcome to 码云, yourname! 

5.5、则证明添加成功。


6、 关于权限


7、 访客

对于公有项目:

  • 创建issue
  • 评论
  • Clone 和 Pull 项目
  • 打包下载代码
  • Fork 项目
  • 创建 pull request

8、 报告者

  • 继承访客的权限
  • 私有项目:不能查看代码
  • 私有项目:不能下载代码
  • 私有项目:不能fork代码

9、 观察者

  • 继承报告者权限
  • 创建wiki
  • 打包下载代码
  • 不能push代码
  • 私有项目:可以fork

10、 开发者

  • 创建 issue
  • 评论
  • Clone 和 Pull 项目
  • 打包下载代码
  • 创建 pull request
  • 创建分支
  • 推送分支
  • 删除分支
  • 创建标签(里程碑)
  • 创建 wiki

11、 管理员

  • 创建 issue
  • 评论
  • Clone 和 Pull 项目
  • 打包下载代码
  • 创建 pull request
  • 创建分支
  • 推送分支
  • 删除分支
  • 创建标签(里程碑)
  • 创建 wiki
  • 添加项目成员
  • 强制推送分支
  • 编辑项目属性

12、 项目组管理员

  • 编辑项目组属性
  • 增加成员
  • 添加/删除项目
  • 设置项目组管理员
  • 删除项目组
  • 更改成员项目权限

13、 Git @ OSC Flavored Markdown


Git @ OSC 的markdown基于原markdown做了一下扩展,具体使用如下。

14、 You can use GFM in:

  • 提交消息
  • 评论
  • issues
  • pull requests
  • 里程碑
  • wiki 页面

15、 跟传统的Markdown的区别

16、 URL 自动链接

插入的URL不需要做特殊处理,会自动变成链接。

17、 Emoji表情

支持Emoji表情,参考:Emoji cheat sheet

18、 插入代码片段

可以向如下这种方式插入代码片段,可以在标记后面指定编程语言,如果没有指定语言,编译器会尝试自动识别。

ruby
require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html

将会变成

require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html

19、 特殊的 码云 引用。

GFM 可以识别一些特殊的标记,并且支持自动补全,例如:

  • 123 (Issue)

  • !123 (Pull Request)
  • commit:1234567 (提交)
  • :icon: (emoji 表情)

20、 如何导入外部的Git仓库?

因为一些原因暂没有开放一键导入功能。
有需求的可以先按照如下步骤导入其它地方的git仓库(以 github 上的 impress.js 为例):

20.1、 从原始地址 clone 一份 bare 仓库:

git clone --bare  https://github.com/bartaz/impress.js.git

20.2、 在 码云 上 创建一个项目

20.3、 以 mirror 的方式把刚才 clone 的项目 push 到 码云 上: (如果提示输入 git 用户密码,请到 http://gitee.com/keys 添加 SSH Key)

cd impress.js.git
git push --mirror [email protected]:username/impress-js.git

这种方式的好处是:可以完整地保留原项目的所有 branch 和 tag 信息。
提示:首次push内容量较大,推荐采用ssh方式push,传输更快,更稳定,如果项目较小,也可以采用http方式push。

更多导入办法,请点击这里

21 项目组的使用

项目组可以使用户更加方便的添加用户到项目中

21.1、 创建项目组:http://gitee.com/teams/new

21.2、 添加用户:可以设置两种权限,一种是用户默认在项目中的权限,一种是项目组管理权限

21.3、 指派到项目:如果选择开发者,那么将会按照用户在项目组中的默认权限为项目添加;如果选择管理员,那么项目组中的所有成员将会成为项目的管理员

21.4、 撤销项目:撤销项目将会把在项目属于项目组中的成员移除,如果成员同样存在于此项目别的项目组中,那么将会更新为别的项目组中的相应的项目权限。

Tips

  • 项目组只有项目组的成员可以访问

  • 项目组的名称是全站唯一的

  • 一个用户存在于两个项目组a,b中,在a中的项目权限是管理员,在b中的项目权限是开发者,如果项目组a,b同时指派到项目pro,那么将项目组a从pro中移除之后,此用户在pro中的权限将会从管理员降为开发者。

22 README 规则

22.1、 码云 README 文件支持多种文件格式以及命名规则。

例如: README, README.md, README.org...

或者: README_zh.md, README_en.md...

22.2、若有多个README文件,则优先显示文件名包含'_zh','_cn'等中文标注的README文件。

例如同一目录包含两个README文件:README_en.md README_zh.md

则显示README为: README_zh.md

23、 改写历史,去除大文件

git filter-branch --tree-filter 'rm -f path/to/large/files' --tag-name-filter cat -- --all
git push origin --tags --force
git push origin --all --force

详细参见:这里

24、 继续阅读

你可以点击这里阅读权威的git书籍ProGit

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

  • eclipse中egit插件使用-图文并茂-详细

  • Visual Studio 2012连接到osc@git

  • TortoiseGit配合msysGit在码云代码托管的傻瓜教程

  • 利用eclipse的git插件EGit与码云交互

  • Git初体验

  • 在win7系统下使用TortoiseGit(乌龟git)简单操作码云

  • Xcode连接git @ osc

  • 码云(git)中team开发、fork和pull request的用法

  • eclipse的git插件整合码云

  • Eclipse使用EGit管理码云项目

  • 如何导入外部Git仓库到中国源代码托管平台(码云)

  • https 方式使用码云设置密码的方式

衷心感谢网友 @nekocode @铂金便便 @恺哥 [@彼岸花开花落时] (http://my.oschina.net/bianhuakaihualuoshi) @whaon @小小程序员 @老左 @司马奔 @枫叶飘零 @大漠真人细心整理分享资料。

你可能感兴趣的:(git版本库视频教程及码云提供的使用文档)