和谐万维app用作工程项目管理系统以什么思想运行?

两分钟学会如何在github托管代码
作者:新风作浪
字体:[ ] 类型:转载 时间:
这篇文章主要介绍了两分钟学会如何在github托管代码,本篇内容针对不会Git的小童鞋,大神们可以绕过,错误之处谢谢指正
本篇博客针对不会Git的小童鞋,大神们可以绕过,错误之处谢谢指正;
关于GitHub的强大此处不在说明,知道GitHub也有一段时间了,但是一直苦于不会使用。
本篇文章介绍的是如何将工程代码托管到上面;如果你还没注册GitHub账号请到上注册
如果你已经注册GitHub账号,在你的电脑上安装了GitHub,而一直还没上传过代码
1.打开浏览器登陆你的GitHub账号,Creat a new repo 如图:
2.然后跳转下一个页面,填写repository name,如:TEST,在Add .gitgore一项根据你所使用语言选择,其他的默认,然后creat repository
然后GitHub自动给你生成关于托管你本工程的简单命令行,HTTP 、SSH后面的连接为你创建的远程仓库地址
3.打开xcode创建一个工程,比如我创建的工程名TESTDemo,然后打开终端,进入TESTDemo文件夹,输入Creat a new repository on the command line提示的命令
工程代码已经托管完毕;
当在终端上输入git push -u origin master的时候,会出来Username: 和Password这个表示你的GitHub账号和密码,我们再输入账号和密码一直显示为空白,这是防止用户隐私泄露而不显示任何信息,不是电脑电脑假死现象
4.然后在就可以在你的GitHub账号的Repositories中找到你刚刚在终端上替交的TESTDemo代码工程:如图
打开TEST,/XFZLDXF/TEST.git &就是代码工程的链接,通过该连接就可以把这个工程里面内容克隆到本地
解释下输入的命令:
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 /XFZLDXF/TEST.git & 添加本地仓库origin和指定远程仓库地址
6)git push origin master &推送本地仓库到远程指定的master分支上
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具用户名:fsjoy1983
文章数:301
评论数:298
访问量:1165881
注册日期:
阅读量:1297
阅读量:3317
阅读量:427512
阅读量:1115594
51CTO推荐博文
第五课 Git标签
内容提要:创建有签名,无签名、轻量级标签来永久的标记项目历史中的关键点
跟大多数的VCS工具一样,git也有在历史状态的关键点“贴标签”的功能--一般人们用这个功能来标记发布点(例如'v1.0')。这节课我们学习如何使用标签列表,创建新标签,以及在git中有哪些不同类别的标签。
列出git中现有标签
要想列出git中现有的所有标签,输入'git tag'命令运行即可:
$ git tagv0.1v1.3
这个列表是按照字母表顺序给出的,其实排名先后跟重要程度没有直接联系。
当然,你也可以按照特定表达式搜索某些标签。假如在一个git仓库中有超过240个标签,而你只想得到1.4.2序列的标签,那么你可以:
$ git tag -l v1.4.2.*v1.4.2.1v1.4.2.2v1.4.2.3v1.4.2.4
在git中有两种最主要的标签--轻量级标签(lightweight)和带注释的标签(annotated)。轻量级标签跟分枝一样,不会改变--它就是针对某个特定提交的指针。然而,带注释的标签是git仓库中的对象。它是一组校验和,包含标签名、email、日期,标签信息,GPG签名和验证。一般情况下,建议创建带注释的标签,这样就会保留这些信息,但是如果你只是需要临时性标签或者某些原因你不想在标签中附带上面说的这些信息,lightweight标签更合适些。
带注释的标签
在git中创建带注释的标签非常简单,在运行'tag'命令时加上-a就可以了。
$ git tag -a v1.4 -m 'version 1.4'$ git tagv0.1v1.3v1.4
'-m'指明标签信息,跟标签一起存储。如果你不使用-m指明标签信息,git会自动启动文本编辑器让你输入。
可以使用 git show 命令查看相应标签的版本信息,并连同显示打标签时的提交对象。
$ git show v1.4tag v1.4Tagger: Scott Chacon &&Date:&& Mon Feb 9 14:45:11
my version 1.4commit b64cf874c7bd83b3ff6Merge: 4a447f7... a6b4c97...Author: Scott Chacon &&Date:&& Sun Feb 8 19:02:46
&&& Merge branch 'experiment'
我们可以看到,在提交对象信息上面,列出了此标签的提交者和提交时间,以及相应的标签信息。
有签名的标签
如果你有GPG私钥的话,你也可以用GPG来给你的标签签名,把-a换成-s就可以了:
[master]$ git tag -s v1.5 -m 'my signed 1.5 tag'
You need a passphrase to unlock the secret key foruser: "Scott Chacon &&"1024-bit DSA key, ID F721C45A, created
然后,如果你对某个标签运行'git show'的话,你就会看到你的GPG前面附加上去了。
[master]$ git show v1.5tag v1.5Tagger: Scott Chacon &&Date:&& Mon Feb 9 15:22:20
my signed 1.5 tag-----BEGIN PGP SIGNATURE-----Version: GnuPG v1.4.8 (Darwin)
iEYEABECAAYFAkmQurIACgkQON3DxfchxFr5cACeIMN+ZxLKggJQf0QYiQBwgySNKi0An2JeAVUCAiJ7Ox6ZEtK+NvZAj82/=WryJ-----END PGP SIGNATURE-----commit b64cf874c7bd83b3ff6Merge: 4a447f7... a6b4c97...Author: Scott Chacon &&Date:&& Sun Feb 8 19:02:46
&&& Merge branch 'experiment'
稍后,我们会介绍如何验证签名标签。
轻量级标签
轻量级标签实际上就是存在一个文件中的提交校验和--没有附加任何其他信息。创建轻量级标签的方法就是把上面'-a','-s','-m'这些选项都去掉。
$ git tag v1.4-lw$ git tagv0.1v1.3v1.4v1.4-lwv1.5
如果现在对这个标签使用'git show'命令,不会看到像上面那种标签显示的那么多内容,仅仅显示这次提交的有关信息。
$ git show v1.4-lwcommit b64cf874c7bd83b3ff6Merge: 4a447f7... a6b4c97...Author: Scott Chacon &&Date:&& Sun Feb 8 19:02:46 &&& Merge branch 'experiment'
使用'git tag -v (tag)'就可以验证一个签名标签了。这个命令会用到GPG来验证签名。前提是:你必须在密钥环中存放着签名者的公钥。
$ git tag -v v1.4.2.1object 883653babd8ee7ea23e6a5c392bbeb61type committag v1.4.2.1tagger Junio C Hamano &&
GIT 1.4.2.1
Minor fixes since 1.4.2, including git-mv and git-http with alternates.gpg: Signature made Wed Sep 13 02:08:25 2006 PDT using DSA key ID F3119B9Agpg: Good signature from "Junio C Hamano &&"gpg:&&&&&&&&&&&&&&&& aka "[jpeg image of size 1513]"Primary key fingerprint:
C9A7& 4A7D C0C6 D9A4 F311 9B9A
如果你没有这个公钥的话,你会看到这样的信息:
gpg: Signature made Wed Sep 13 02:08:25 2006 PDT using DSA key ID F3119B9Agpg: Can't check signature: public key not founderror: could not verify the tag 'v1.4.2.1'
后期贴标签
这种情况是说你想对以前的某次提交贴个标签,如果整个提交历史是这样的:
$ git log --pretty=onelineb64cf874c7bd83b3ff6 Merge branch 'experiment'a6b4c9096da251c98a07c7723e65 beginning write support0d52aaab86c15f77a3d64d9165190 one more thing6d52a271edadd79daabbc4d9b6008e Merge branch 'experiment'0bcc7b8c3d5e1dddfed66ff742fcbc added a commit function305bdd616e23b64bb added a todo file166ae0c4d3f420721acbb115cc33848dfcc2121a started write support9fceb02d0ae598e95dc970bd61af8 updated rakefile964f16d36dfccde844893cac5b347e7b3d44abbc commit the todo8a5cbc430f1a9c3d00faaeffd08a updated readme
忘记在那个提交信息为'updated rakefile'的点上贴一个'v1.2'的标签了,我可以现在贴一个上去。你可以在执行创建标签的语句后面跟上那次提交的校验和(或者部分校验和)。
$ git tag -a v1.2 9fceb02
现在我们可以列出所有的标签:
$ git tag v0.1v1.2v1.3v1.4v1.4-lwv1.5
$ git show v1.2tag v1.2Tagger: Scott Chacon &&Date:&& Mon Feb 9 15:32:16
version 1.2commit 9fceb02d0ae598e95dc970bd61af8Author: Magnus Chacon &&Date:&& Sun Apr 27 20:43:35
&&& updated rakefile...
默认情况下,'git push'命令不会将标签上传到远程服务器上。为了共享这些标签,你必须在'git push'命令后明确添加-tags选项
[master]$ git push --tagsCounting objects: 50, done.Compressing objects: 100% (38/38), done.Writing objects: 100% (44/44), 4.56 KiB, done.Total 44 (delta 18), reused 8 (delta 1)To &* [new tag]&&&&&&&& v0.1 -& v0.1&* [new tag]&&&&&&&& v1.2 -& v1.2&* [new tag]&&&&&&&& v1.4 -& v1.4&* [new tag]&&&&&&&& v1.4-lw -& v1.4-lw&* [new tag]&&&&&&&& v1.5 -& v1.5
现在,如果有人克隆或者在线同步你的git仓库的话,标签也会一并同步了。
了这篇文章
类别:┆阅读(0)┆评论(0)
16:18:44 09:49:30 16:03:11  身边的技术大牛一直都建议我使用git进行代码管理,而我每次都把这件事情忘之脑后。最近,好像感觉到了git的重要性。下面是最简单的使用git的入门方法,仅适用于像熊二飞月这样的菜鸟级git选手。
Git是一个分布式版本控制软件,原是Linux内核开发者Linus Torvalds为更好地管理Linux内核开发而设计的。
Git是用于Linux内核开发的版本控制工具。与CVS、Subversion一类的集中式版本控制工具不同,它采用了分布式版本库的方法,不需要服务器端软件,就可以运作版本控制,使得源代码的发布和交流及其方便。Git的速度很快,这对于诸如Linux内核这样的大项目来说自然很重要。Git最为出色的是它的合并追踪(merge tracing)能力。
实际上内核开发团队决定开始开发和使用Git来作为内核开发的版本控制系统的时候,世界上开源社区的反对声音不少,最大的理由是Git太艰涩难懂,从Git的内部工作机制来说,的确是这样。但是随着开发的深入,Git的正常使用都由一些友善的命令稿来执行,使Git变得非常好用。
1. 安装git
熊二飞月使用的是ubuntu系统,使用apt-get install git即可安装。
2. 设置Git
在能够使用Git进行工作之前,我们需要进行一次性的配置。为了能让Git能够跟踪谁做了修改,我们需要设置你的用户名。
git config --global user.name "bear2flymoon"
git config --global user.email
这里我的用户名就设置为:bear2flymoon
邮箱为:(谷歌被墙,无法登陆)
3. 创建一个本地代码库
假设我们的代码写在机器的/home/bear2flymoon文件夹下的&test'文件夹内。在命令行输入下列命令:
cd /home/bear2flymoon/test/
下面,我们需要告诉Git这个文件夹是我们需要跟踪的项目。所以我们在该目录下输入以下命令来初始化一个新的本地Git代码库
Git会在test文件夹下创建一个名为.git的隐藏文件夹,这就是你的本地代码库。
4. 暂存(stage)文件
我们需要暂存(stage)test文件夹下所有项目文件,输入以下命令:
最后的&.&符号的意思是&所有文件、文件夹和子文件夹&。假如我们只需要把特定文件添加到源代码控制中去,我们可以指定它们:
git add my_file,my_other_file
5. 提交文件
现在,我们想要提交已经暂存(staged)的文件。我们提交我们的文件时,总是附带着有意义的注释,描述它们现在的状态。我一直用&initial commit"来描述我的第一个提交的注释。
git commit -m "initial commit"
同样,你随时可以回滚到这个提交状态。如果你需要检查现在已暂存和未暂存文件的状态、提交等,你可以输入以下命令询问git的状态:
git status
6. 创建分支
创建分支是你创建代码独立版本的动作,这个新分支独立于你的主干。默认的,每次你提交到Git的代码都会被存储到&master(主干)&分支。
现在,比如我们想向项目中添加一个功能,但我们又想要能够回滚到现在的版本,为了防止出现差错,或者我们会最终放弃这个功能。这时候,我们就可以创建分支并切换到新建的分支,发送命令:
git checkout -b new_feature
或者先创建一个分支,然后切换
git branch new_feature
git checkout new_feature
要看项目下所有的分支,发送命令:
git branch
现在你可以在你的项目上无所顾忌地做任何你想做的:任何时候,你都可以回到你创建分支前的状态。注意,你同时可以有多个分支,甚至可以从一个分支上再创建一个分支。
7. 合并分支
当我们对新功能满意的时候,我们想要把它加到主干分支上。当我们在的新功能分支上时,我们首先需要加载并且提交文件:
git commit -m "adds my new feature"
然后移到主干分支:
git checkout master
像这样合并:
git merge new_feature
此时,我们的主干分支和新功能分支会变成一样。
8. 丢弃并删除分支
当我们想要丢弃并删除一个分支时,首先加载我们的文件并且在分支里提交:
git commit -m "feature to be discarded"
然后,移到主干分支
git checkout master
然后发送删除命令
git branch -d new_featrue
假如修改已经合并了,它只会删除分支。假如分支没有合并,我们会得到一个错误信息。删除一个未合并的分支(通常我们不想保留的修改),我们需要发送一样的命令附带一个大写D。意思是&强制删除分支,无论如何我不想要它了。&:
git branch -D new_feature
9. 回滚到之前提交的状态
在某些情况下,我们可能想要回到之前的代码版本。首先,我们需要找到想回到到哪个版本。需要查看所有完成的提交,发送命令:
输出提交的历史记录
commit ca82a6dff817ec66f90aAuthor: your_username your_Date:
Mon Nov 4 12:52:11 2013 -0700
changes the frontpage layout
commit 085bb3bcb608e1e2f8ecbeAuthor: your_username your_Date:
Mon Nov 4 11:40:33 2013 -0700
adds my new feature
commit a11bef06a3f63abf99ad00de2209e6Author: your_username your_Date:
Mon Nov 4 10:37:28 2013 -0700
initial commit
如果我们想回到&adds my new feature"这个提交,简单的使用提交的ID做签出(checkout)(通常只用ID的开头9个字母)
git checkout 085bb3bcb
我们也可以签出一个新的分支
git checkout -b my_previous_version 085bb3bcb
只是别太疯狂了!分支越复杂,我们就越难确定我们在做什么。
Git允许我们为常用的命令创建快捷方式(别名)。例如,如果我们不想每次都输入git commit -m &some comment&,而是输入git c &some comment&,我们可以向git全局配置里添加一个别名来实现,像这样:
git config --global alias.c 'commit -m'这是我使用的别名列表:git config --global alias.c 'commit -m'git config --global alias.co 'checkout'git config --global alias.cob 'checkout -b'git config --global alias.br 'branch'git config --global alias.m 'merge'git config --global alias.a 'add .'git config --global alias.s 'status'git config --global alias.dbr 'branch -d'
这下就可以使用Git进行最基本的程序版本管理啦!
学习资料:
Pro Git&/progit/
本文参考整理自以下资料:
维基百科&http://zh.wikipedia.org/zh-cn/Git
伯乐在线 /53573/
推荐下面这个教程:
                       &熊二飞月
阅读(...) 评论()中国领先的IT技术网站
51CTO旗下网站
已经会用Git了?不会这十招怎么行
之前我们发了一些教程让你熟悉Git基础和在团队合作环境中使用Git.我们讨论的这些Git命令足够让一个开发者在Git的世界里生存下去。在这篇教程里,我们试着探索如何高效地管理你的时间以及如何充分利用Git提供的特性。
作者:佚名来源:linuxeden| 16:13
之前我们发了一些教程让你熟悉和.我们讨论的这些Git命令足够让一个开发者在Git的世界里生存下去。在这篇教程里,我们试着探索如何高效地管理你的时间以及如何充分利用Git提供的特性。
注意:这里介绍的命令中有的包含方括号(例如:git add -p [file_name])。在这些例子中,你应该用你自己的数字、标识符等替代方括号里的内容,并且去掉方括号。
1. Git自动补全
如果你在命令行环境中运行Git命令,每次都手动地逐个输入命令是一件很无聊的事。为此,你可以花几分钟时间配置一下Git命令的自动补全功能。
在*nix系统运行下列命令下载自动补全脚本:
curl /git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash
然后,添加下面的行到你的~/.bash_profile文件:
if [ -f ~/.git-completion.bash ];then
. ~/.git-completion.bash
尽管我之前已经提到过,但我还是想再强调一下:如果你想使用完整的Git特性,你绝bi应该切换到命令行环境。
2. 在Git中忽略文件
你是不是对出现在你Git库里面的编译生成文件(比如.pyc)感到很无语?或者你是不是很厌恶不小心将他们添加到了Git?直接看这里,这里有一个方法可以让你告诉Git忽略所有这些文件和目录。只需要创建一个名字为.gitignore的文件,里面列出你不想要Git跟踪的文件和目录。可以用感叹号(!)列出例外情况。
my_db_config/
3. 谁动了我的代码?
当事情出了乱子时立马责怪别人这是人类的天性。如果你的服务器程序不能正常工作了,要找出罪魁祸首是非常简单的--只需要执行git blame。这个命令告诉你文件里的每一行的作者是谁,最后改动那一行的提交,以及提交的时间戳。
git blame [file_name]
在下面的截图里,你可以看到在一个更大的库里这个命令的输出是什么样的:
4. 查看库的历史
在之前的教程里,我们已经看过了如何使用git log命令。不管怎样,有3个选项你应该知道。
--oneline - 压缩每次的提交信息,只保留一个缩减的Hash值和说明文字,然后把这些都展示在一行里。
--graph - 这个选项将在左边画出一个文字界面的提交历史图。如果你只有一个分支,用这个选项查看历史时是没什么意义的。
--all - 显示所有分支历史。
这是这3个选项合起来使用的效果:
5. 不要丢失对某个提交的跟踪
假设你提交了一些不需要的东西,然后你进行了hard重置回到之前的状态。后来,你发现在这个过程中你丢失了其他一些重要的信息,你想要把这些信息找回来,或者至少可以查看一下这些信息。这就需要git reflog帮忙。
简单的git log只能告诉你最近的提交,这个提交的父提交,父提交的父提交,等等。但是git reflog是一个HEAD指向的提交的列表。记住,这个列表依赖于你自己的本地操作环境,它不是库的一部分,也不包含在push或者merge中。
如果执行git log命令,可以看到提交历史,这是我的库的一部分:
但是,git reflog命令显示了一个被我用hard重置丢掉的提交(b1b0ee9-HEAD@{4}).
原文链接:
【编辑推荐】
【责任编辑: TEL:(010)】
大家都在看猜你喜欢
原创头条头条外电头条
24H热文一周话题本月最赞
讲师:0人学习过
讲师:0人学习过
讲师:5人学习过
精选博文论坛热帖下载排行
本书共22章,包括操作符、控制执行流程、访问权限控制、复用类、多态、接口、通过异常处理错误、字符串、泛型、数组、容器深入研究、Java I...
订阅51CTO邮刊

我要回帖

更多关于 和谐万维 的文章

 

随机推荐