有时我们一个团队在做项目时,可能有一个明确的分工,每个成员做一个部分,并对该部分进行测试然后实现该部分的功能,到最后所有部分整合在一起。那么,将所有部分整合在一起是一个极需要时间和空间配合的环节。用U盘拷贝?在线或者离线发送?too old too trouble!!!
假如每一步都需要良好的整合?那么每次整合对所有成员来说都是泪流满面啊!!!程序员岂不华丽转身变为程序猿?
那么,这里就不得不提到数据仓库托管。数据仓库可以实时得共享数据,团队成员可以对代码的上传,更新以及下载。这对于团队项目是一个莫大的惊喜,大大节约了团队开发的时间和精力。
当然,现在网上有很多的数据仓库托管工具。其中用的比较多的是GitHub和SVN。本博文主要介绍GitHub的入门使用,对于老鸟可以跳过。假如对数据安全比较敏感并且不嫌架设 Git 服务器麻烦,那就自己上手年搭建Git服务器托管吧~~~
托管步骤:
(一) 在GitHub上注册一个账号,已注册的跳过第一步
注册地址:https://github.com/
(二) 新建一个远端仓库(Repository),仓库的类型定为SSH
(三)安装客户端GithubWindows
github是服务端,要想在自己电脑上使用git我们还需要一个git客户端,我这里选用msysgit,这个只是提供了git的核心功能,而且是基于命令行的。下载地址:http://code.google.com/p/msysgit/
装完msysgit后右键鼠标会多出一些选项来,在本地仓库里右键选择Git Init Here,会多出来一个.git文件夹,这就表示本地git创建成功。右键Git Bash进入git命令行,为了把本地的仓库传到github,还需要配置ssh key。
(四) 建立本地SSH key,并在GitHub上设置SSH key,配置Git
打开git bash:
首先在本地创建ssh key;
$ ssh -keygen -t rsa -C "your_email@youremail.com"
|
后面的your_email@youremail.com改为你的邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。成功的话会在~/下生成.ssh文件夹,进去,打开id_rsa.pub,复制里面的key。
回到github,进入Account Settings,左边选择SSH Keys,Add SSH Key,title随便填,粘贴key。为了验证是否成功,在git bash下输入:
|
$ ssh -T git@github.com
|
如果是第一次的会提示是否continue,输入yes就会看到:You’ve successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。
接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们。
$ git config --global user.name
"your name"
$ git config --global user.email
"your_email@youremail.com"
进入要上传的仓库,右键git bash,添加远程地址:
|
$ git remote add origin git@github.com:yourName /yourRepo .git
|
后面的yourName和yourRepo表示你再github的用户名和刚才新建的仓库,加完之后进入.git,打开config,这里会多出一个remote “origin”内容,这就是刚才添加的远程地址,也可以直接修改config来配置远程地址。
(五)提交、上传数据。
接下来在本地仓库里添加一些文件,比如README,
|
$ git add README $ git commit -m "first commit"
|
上传到github:
|
$ git push origin master |
git push命令会将本地仓库推送到远程服务器。
git pull命令则相反。在此就不班门弄斧了、
上传文件夹:
先输入cd命令跳转到需要上传的文件夹目录:然后依次输入一下命令。
以我当前目录所有文件上传到ARvision组织下的ARball数据仓库中为例:
git init
git add .(小数点,还有空格哟)
git commit -m "first commit"
git remote add origin git@github.com:ARvision/ARball.git
git push -u origin master
解释下输入的命令:
1)touch README.md文件是关于工程代码的介绍,类似与使用说明书
2)git init 初始化一个本地的 git仓库,生成隐藏的.git目录(隐藏的.git目录可使用ls -aF命令可以查看到)
3)git add README.md 把README.md文件添加到仓库中
4)git commit -m "first commit" 执行提交说明,在Gitz中这个属于强制性的
5)git remote add origin git@github.com:ARvision/ARball.git 添加本地仓库origin和指定远程仓库地址
6)git push origin master 推送本地仓库到远程指定的master分支上
那么就完成了整个上传过程了。
(六)Git ignore文件
gitignore顾名思义就是告诉git需要忽略的文件,这是一个很重要并且很实用的文件。一般我们写完代码后会执行编译、调试等操作,这期间会产生很多中间文件和可执行文件,这些都不是代码文件,是不需要git来管理的。我们在git status的时候会看到很多这样的文件,如果用git add -A来添加的话会把他们都加进去,而手动一个个添加的话也太麻烦了。这时我们就需要.gitignore了。比如一般c#的项目我的.gitignore是这样写的:
|
bin *.suo obj |
bin和obj是编译目录,里面都不是源代码,忽略;suo文件是vs2010的配置文件,不需要。这样你在git status的时候就只会看到源代码文件了,就可以放心的git add -A了。
(七)tag标签
我们可以创建一个tag来指向软件开发中的一个关键时期,比如版本号更新的时候可以建一个“v2.0”、“v3.1”之类的标签,这样在以后回顾的时候会比较方便。tag的使用很简单,主要操作有:查看tag、创建tag、验证tag以及共享tag。
7.1查看tag
列出所有tag:
|
git tag |
这样列出的tag是按字母排序的,和创建时间没关系。如果只是想查看某些tag的话,可以加限定:
|
git tag -l v1.* |
这样就只会列出1.几的版本。
7.2创建tag
创建轻量级tag:
|
git tag v1.0 |
这样创建的tag没有附带其他信息,与之相应的是带信息的tag:
|
git tag -a v1.0 -m 'first version'
|
-m后面带的就是注释信息,这样在日后查看的时候会很有用,这种是普通tag,还有一种有签名的tag:
|
git tag -s v1.0 -m 'first version'
|
前提是你有GPG私钥,把上面的a换成s就行了。除了可以为当前的进度添加tag,我们还可以为以前的commit添加tag:
|
#首先查看以前的commit git log --oneline #假如有这样一个commit:8a5cbc2 updated readme #这样为他添加tag git tag -a v1.1 8a5cbc2 |
7.3删除tag
很简单,知道tag名称后:
|
git tag -d v1.0 |
7.4验证tag
如果你有GPG私钥的话就可以验证tag:
|
git tag - v v1.0
|
7.5共享tag
我们在执行git push的时候,tag是不会上传到服务器的,比如现在的github,创建tag后git push,在github网页上是看不到tag的,为了共享这些tag,你必须这样:
|
git push origin --tags |
参考资料:http://blog.csdn.net/chun799/article/details/8679212
http://wuyuans.com/2012/05/github-simple-tutorial/
相关推荐
主要介绍了两分钟学会如何在github托管代码,本篇内容针对不会Git的小童鞋,大神们可以绕过,错误之处谢谢指正
NULL 博文链接:https://ewf-momo.iteye.com/blog/1884661
通过GitHub,开发者可以将代码托管在云端,并与他人协作开发。 GitHub的核心功能包括代码托管、版本控制、协作工具和集成与扩展。这些功能可以帮助开发者追踪代码变更历史、管理团队成员和权限、自动化构建和部署等...
GitHub托管了性剥削技术的源代码,促进了基于图像的性虐待性剥削,并推动了生成式人工智能的危险使用.docx
gitHub是全球大型的开源社区之一,它提供了一个线上的代码托管服务,所以很多开源代码都会被托管到gitHub上。如果作为新时代的码农不知道这个就相当low了。 如果我们只是需要浏览或者下载源码的话,是不需要注册账户的...
【代码托管】使用Github的详细步骤。你还在愁那些英文,你还在用SVN?out啦,github,谁用谁知道!!!
包含GitHub代码托管, 在PyPI发布你的扩展包, 部署文档网站, 使用Travis-CI自动化测试, 一条龙全套服务。我做了一个工具, 可以让你仅仅填写项目名称和Python版…. 软件开发设计:应用软件开发、系统软件开发、移动...
GitHub 客户端,实现项目工程代码托管
GitHub于2008年4月10日正式上线,除了Git代码仓库托管及基本的 Web管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。目前,其注册用户已经超过350万...
GitHub是一个基于Web的Git代码托管平台。它提供了分布式版本控制和源代码管理的功能,并且允许开发者协作工作。 GitHub允许开发者在云端存储和管理他们的源代码、维护版本历史记录、协作开发、审查代码并跟踪问题。...
监控github代码库,及时发现员工托管公司代码到GitHub行为并预警,降低代码泄露风险。
Github的模仿者 中国的代码托管网站的现状.docx
taylorod.github.io自述文件:我的静态GitHub托管网站-taylorod.github.io 这是一个简单的网站,可让观看者了解我它以类似于样式的代码进行布局,并始终具有隐藏的超链接。技术栈该网站是用JavaScript,CSS,HTML和...
gitHub于2008年4月10日正式上线,除了git代码仓库托管及基本的 Web管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。目前,其注册用户已经超过350万...
GitHub是一个代码托管的社区,这个服务器是在国外的,一般访问的话要使用https协议,大家可以在搜索引擎上搜查一下,就知道了。 在传统的方式中,我们常常使用命令行的形式去提交代码,但是这样会有许多问题出现。...
Actions运行程序,而不是使用Github托管的运行程序。 (请注意,Matlab是在Github托管的Linux运行程序上运行的(没有其他操作系统)) 为了使该过程更安全和可扩展,我们选择在其自己的虚拟机实例中运行每个工作流,...
reactphp.github.io:托管reactphp.org。 https上的源代码
matlab里simulink写代码运行 MATLAB 测试的操作 GitHub:registered: 操作使您能够运行 MATLAB:registered: 和 Simulink:registered: 测试并生成工件,例如 JUnit 测试结果和 Cobertura 代码覆盖率报告。 您可以在...
本资源适用于全球范围内的开发者、软件工程师、学生、研究人员以及任何需要频繁使用代码托管平台的用户。对于那些希望在远程位置或特定国家/地区获得更快访问速度的用户来说,这份表格尤为重要。 使用场景及目标: ...
github使用介绍指南,通过git实现代码托管,版本控制。