使用Github进行多人协作,项目管理
文章目录
- 写在前面的话
- 1. 前言
- 1. 将本地项目上传到Github 上
- 1.1 远程端的操作
- 1.2. 本地端的操作
- 2. 分支
- 2.1. 运用场景
- 2.2. 使用方法
写在前面的话
你想知道的有关github的内容,以及网上讲不清的东西,在这里你都可以找到。深入浅出带你玩转github 项目管理。
1. 前言
个人认为,每一个程序猿都应该学会使用版本控制器来管理我们的代码,不管是个人还是团队。学会使用git, svn等工具来进行版本控制是十分必要的。就我个人而言,看着github 上的活动面板被不同的绿色填的满满的是很有成就感的事情。可以让你看到自己的开发流程,你每一个版本的代码情况。就算你这个版本的代码修改错了,你还可以使用上一个版本的正确的代码
在Github 上建立起每一个属于自己的代码库好处真的非常的多,能够方便之后的一些代码复用,养成良好的代码的管理的习惯,尤其是之后想用的时候不会找不到。所有文件代码分类管理就像把一个杂乱的房间规制整齐的感觉。
下图是我的活动面板,嘤嘤嘤~~
github 管理代码的方式其实又很简单,一般常用的方法就是添加,push, commit,pull 这几个常用的操作, 其他的工具也是类似的使用方法,鉴于Github 上面的开源代码项目最多,个人的使用频率最高,所以今天就主要来说一说怎么使用git来进行项目的管理。
1. 将本地项目上传到Github 上
1.1 远程端的操作
注意,我自己的电脑运行环境是Ubuntu
我们要使用githubl来管理我们的代码,首先就是你的先在github上建立一个自己的帐号。
其实这个方法已经被很多的博客介绍过了,我们现在在这里只是做简单的介绍,保证整个文档的完整性。
在登陆页面之后,我们进入到自己的页面下面, 然后可以看到整个网页的右上角的一个小的加号,点开之后我们可以看到如下图所示:
这个时候我们可以看到几个选项,这个时候我们选择第一个选项,创建一个new repository 这个选项
这个时候我们会跳转到下面的这个页面:
填写相应信息后点击create repository即可
Repository name: 仓库名称(输入名字,最好不要使用中文)
Description(可选): 仓库描述介绍
Public, Private : 仓库权限(公开共享,私有或指定合作者)
Initialize this repository with a README: 添加一个README.md
gitignore: 不需要进行版本管理的仓库类型,对应生成文件.gitignore
license: 证书类型,对应生成文件LICENSE
如果你是在校学生的话就可以免费创建这个私有的代码仓库了
一般情况下我先不会选择写readme,我一般都是之后全部上传完成之后在写
之后复制相关的链接
1.2. 本地端的操作
首先到我们本地端的代码仓库的位置
初始化
git init
之后添加
git add -A
提交
git commit -m "you message"
关联到远程仓库
git remote add origin 远程仓库的地址
就是我们刚才复制的那一行,可以选择 git 也可以选择 https 开头,我一般选择 git开头,e.g.
git remote add origin git://github.com/ZXXX.git
git pull origin master // 把本地仓库的变化连接到远程仓库主分支
2. 分支
2.1. 运用场景
分支是版本控制的一个重要组成部分,说一说我自己最常用的一个功能。比如说我可能之前在出去交流了,然后在交换的学校提供的电脑上开发了一个项目。这个时候我访问结束,回到自己的学校,我之前已经完成了整个项目的大部分的代码开发,这个时候我不想占用本地的电脑资源,我不想把原先的代码在clone 到我的本地,我只想完成这个项目独立的一个模块,这个模块是属于这个项目的,但是是额外添加的一个功能对主功能没有什么实质影响。
这个时候我就可以选择使用分支,把自己需要完善的这部分的独立的代码添加到分支上,针对这个分支上的项目,模块进行修改,不需要对整个核心项目进行下载,直接在分支上管理我的独立模块即可。
2.2. 使用方法
上传我们独立的这个分支,首先我们在本地的工程目录下,生成 .git 文件夹
git init
上传修改的文件
git add -A
或者
git add *
这个时候提交
git commit -m "upload the branch"
我们需要把我们的这些新修改的本地工程添加到我们另外的独立分支上,而不是我们的master 支干上。
这个时候,我们就需要创建一个分支
创建分支的命令如下所示:
git branch branch_name
比如说我们创建一个叫做test的分支
git branch test
创建好了之后我们要切换到我们创建的这个分支上,并且我们所有这个模块的代码修改都在这个分支上。
切换分支的操作如下所示:
git checkout branch_name
如果说我们要切换到我们刚才创建的那个分支,我们就像下面这么操作
git checkout test
我们这个时候要把我们这个本地项目和这个分支和我们的github 上的master 的项目关联起来,其实就和本地向明月和主分支关联是一样一样的
git remote add origin https://github.com/XXX.git
这个时候我们可以使用 git branch来查看我们的远程项目上的所有分支
最后就是我们可以把我们这个独立的本地项目上传到我们远程的分支上了
git push origin test
如果我们要切换到某个特定的分支,我们就可以使用checkout 这个命令来完成
git checkout branch_name
使用Github进行多人协作,项目管理相关推荐
- Github上多人协作方式之一
Github上多人协作方式之一 @(Github学习笔记) A拥有一个仓库RepoA, B看着不错,想着自己可以为这个仓库贡献一点东西,于是Fork这个仓库到自己账户上来. 这时候仓库还是在远程仓库里 ...
- Github远程多人协作
Github远程多人协作 目的:将本地项目代码保存在github网站上,多台主机可以协同修改代码. 别人写的文章很详细了,没有必要重新造一遍,强烈推荐下面文章. 先参考这个文章:https://www ...
- GitHub多人协作简明教程
本文面向已经了解/熟悉git基本命令但是并不熟悉如何使用GitHub进行多人协作开发项目的同学. 为了简单起见,这里假设只有两个开发人员,HuanianLi 和 DaxiangLi.他们在GitHub ...
- Android github 快速实现多人协作
前言:最近要做github多人协作,也就是多人开发.搜索了一些资料,千篇一律,而且操作麻烦.今天就整理一下,github多人协作的简单实现方法. 下面的教程不会出现:公钥.组织.team.pull r ...
- github 多人协作
github 多人协作 1.先下载文件 git clone https://github.com/xxxxxxxxxxx 指定分支 git clone -b +分支 + 地址 (或推送本地到远程仓库 ...
- 项目管理必用的多人协作软件,哪款更专业?
在社会分工日益细密的今天,团队中多人高效协作是顺利实现项目目标的先决条件.在传统管理模式下,项目的管理者往往需要发挥出色的管理才能,付出大量的时间和精力才能使团队形成一种高效协作的氛围. 然而,在互联 ...
- Unity+GitHub多人协作开发
前期准备 首先我用我的GitHub账号,新建了一个仓库(repository),之后用来存放我们的Unity项目.需要合作者的账号,添加为该项目的合作者(collaborators). GitHub官 ...
- github多人协作开发项目教程,2021新版。
文章目录 github多人协作开发项目教程 文章目录 文章目录 一. 必要理论知识 二. 进行实操 1. 管理者方面 2. 成员方面 三. 总结 一. 必要理论知识 github合作开发,在实操之前, ...
- 本周AI热点回顾:Github私有库无限协作、飞腾适配百度昆仑AI处理器、OpenAI发布神经网络可视化库
01 Github私有库无限协作,大 AI 模型随便放 4月14日,GitHub 的 CEO Nat Friedman 在官网上发布声明说, "我们很高兴宣布,我们将为所有 GitHub 用 ...
最新文章
- 常用MySQL的命令集锦
- 句法分析常用算法框架以及NLPIR、Dependency Viwer
- ubuntu server 改变系统语言支持中文
- linux nand 坏块_linux内核中对nand的坏块管理
- hdu1848(sg函数打表)
- Leetcode 455. 分发饼干 解题思路及C++实现
- 破烂微软的.NET IDE环境
- 查找这个接口的调用_事务处理不当,线上接口又双叒内存泄漏了!(附图解问题全过程)...
- jboss 配置上下文路径_JBoss Portal上的“ Hello World” portlet
- python 怎么拷贝一个文件到一个新的文件_Python脚本提取不同文件夹里面的文件到一个新的文件...
- List列表的万能的适配器
- PADS9.5 原理图和封装制作——以STM32F103为例
- 探究雷达(RADAR)工作原理
- google站内搜索代码
- 玩转iOS开发:iOS 10 新特性《Siri Kit Intents Extension UI》
- 无为才能够无不为-曾仕强
- vue created和mounted区别
- 固态硬盘颗粒:SLC/MLC/TLC有什么区别?
- jenkins配置使用
- 袋鼠云技术荟 | 某客户生产服务器CPU负载异常处理