Git/GitHub学习第一天

作者: webbc | 来源:发表于2016-03-30 22:33 被阅读2736次

GitHub介绍

众所周知,GitHub是一个代码托管平台,可以依据现在目前最流行的版本管理方式Git进行管理,可以说,GitHub就是程序员的FaceBook,它让我领略到了开源的魅力。

Git介绍

Git是目前最流行的版本管理方式,其他的版本管理方式,我也有所了解,比如说SVN。和svn相比,git有太多的有点,比如,我在本地管理仓库的时候是不需要联网的,而svn不行,不联网它就不干活了。因此,Git就是一个分布式的版本管理工具,而svn只是一个基于服务器的版本管理方式,如果服务器挂了,就不用工作了;相反,Git却不是这样的,Git可以任意的回滚到以前的版本。

学习内容

在这之前,我想说一句,我的学习完全是建立在【廖雪峰】的博客上,大家也可以看一下他的博客,附上地址:http://www.liaoxuefeng.com/

  • 1、Git Base安装:在Windows系统下载一个mysysgit工具,下载并进行安装
  • 2、Git 基本命令:
    • git init :在本地创建代码仓库
    • git add <文件名> :添加文件到暂存区
    • git commit -m "提交说明" :进行提交,并创建一个新的版本
    • git status :查看当前工作区的状态
    • git diff :查看文件修改的内容
    • git log :查看提交历史
    • git reset :在版本之间进行穿梭
  • 3、gitHub和Git进行关联:如何与、GitHub进行关联,gitHub作为一个远程服务器,我们任何时候都可以从GitHub下push、pull,在刚开始的时候,必须要进行关联,使用git remote add origin git@github.com:username/yourProject.git命令将本地仓库和远程仓库进行关联,在这之前,必须要在远程仓库建立一个和本地仓库一样的工程才行,而且必须在配置了ssh.
  • 4、克隆功能:当我们fork别人的项目,我们就获得了和原作者相同的仓库,此时,可以使用克隆命令把远程仓库克隆到本地,使用的命令如下:git clone git@github.com:username/yourProject.git
  • 5、分支功能:这个功能我认为是git的最重要的一点,如果没有这一点,它就和svn没有什么区别了。对于每一个git仓库,都会有一个主分支,也就是master分支。分支的概念可能有一点烦人,大家需要多多努力。
    • 创建分支:git branch <分支名>
    • 查看分支:git branch,使用此功能,显示的*号的分支我当前分支
    • 切换分支:git checkout <分支名>
    • 创建并切换分支 git checkout -b <分支名>
    • 合并某分支到当前分支:git merge <分支名>,此时采用的是"快进模式"合并
    • 删除分支: git branch -d <分支名>
  • 6 冲突解决:当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。这张图完全展示了分支的概念。


    分支图
  • 7 多人合作
    • git remote -v:查看远程库信息、
    • 本地新建的分支如果不推送到远程,对其他人就是不可见的;
    • 从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;
    • 在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;
    • 建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;
    • 从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。

最后说一句,刚开始我不怎么习惯这种方式,只要多用,我就相信我一定能学会Git的管理方式!

相关文章

  • 关于Git学习例程

    #Git学习例程 本来今天是准备学习如何使用GitHub命令,按照[Git与Github入门资料](http://...

  • git与github的正确使用姿势

    git与github 在学习如何使用git和github前我们先详细了解下什么是git?而github又是什么? ...

  • git 模拟

    第一天上班通过Git地址克隆项目git clone git@github.com:xiaosi0707/1708A...

  • git/github学习

    问题1:在执行 $ git remote addorigin git@github.com:defnngj/hel...

  • 任务三~Git和GitHub

    一、Git和GitHub学习总结 1.Git和GitHub的了解 Git是用于Linux内核开发的版本控制工具,与...

  • Git和GitHub学习总结

    Git和GitHub学习总结1.Git和GitHub的了解Git是用于Linux内核开发的版本控制工具,与CVS、...

  • Git入门学习资源

    Git入门学习资料 廖雪峰 Git教程 Git官网 Pro Git git 简明指南 github-git-che...

  • GIT

    Git学习笔记 Git 与 Github对接: cd到当前文档 git init初始化git git add -A...

  • 码农周刊分类整理 -- G

    GIT [译] 通过示例学习 Git 内部构造(@夏永锋_SJTU) Github Pages 使用教程 git ...

  • Git/GitHub学习第一天

    GitHub介绍 众所周知,GitHub是一个代码托管平台,可以依据现在目前最流行的版本管理方式Git进行管理,可...

网友评论

  • 5552650dee15:这是个什么东西啊。前端后端都能用吗
    webbc: @z_小懒要奋斗 都可以
  • bb69f4b149dd:markdown文字排版真美~
  • smalldu:如果没有猜错,楼主看这个blog学的,http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000:smile:
    webbc: @大石头布 嗯嗯,是的
  • 2f910eebdf92:比较好用的命令 git stash: 备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致
    2f910eebdf92:@Sgemini 旧的commit不会用到新的文件,很少情况下两次不同的修改都会用到同名的新文件
    Sgemini:@tlwlmy 好像所有有关返回上一commit 的命令都对新建文件无效..如果你不要还是需要手动删除..
  • 菓儿粑粑:我也学,加油
  • 牛叉叉的秦神:已收,谢谢楼主,看过一天git,但因为没怎么我你后来,那些命令又忘得差不多了
  • 森西悠然:楼主,我见过你!IT大牛求带飞
    森西悠然: @webbc 有高人指点很重要的
    webbc: @夏七夕July 自己好好学习,没有什么带不带飞
  • 4a53bf1ae933:神markdown
  • 5d32ca0383ce:仅仅只会提交合并,和简单的解决冲突。。。。。
    5d32ca0383ce:@webbc 我说的是我~~ 哈哈哈
    webbc: @颠覆历史的跑神 所以是第一天啊
  • Sgemini:其实不太建议在windows下开发
    http://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%85%B3%E4%BA%8E%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6
    这是关于git 的中文文档
    共勉 :smile:
    Sgemini:@大唐无双 我没试过下载文档..但是那里有提供一本教你用git的书..我看看没有的话我尝试把文档做成离线的吧
    816b6f4a611e:@Sgemini 文档好像下载不下来
    webbc:@Sgemini 好的,谢谢
  • 许小亮:如果工作中用不到git 和github, 总会觉得看了一段时间,不用之后,又全忘了
    许小亮:@webbc 嗯,同意
    webbc: @江山百川 其实我们一个人开发的时候也可以用
  • c2bccef3f430:我看了他的博客,但是那个.gitignore忽略文件,我始终没有生效,不知道哪里配置错了
    c2bccef3f430: @降落在地球上的那美克星人 好的,我试试
    降落在地球上的那美克星人:@疯狂的大叔 如果你想要忽略文件,可以在 .git/info/exclude 修改 exclude 文件
    Sgemini:@疯狂的大叔 我记得是要先把缓存全部清掉..之后你在gitignore上面设置的才会生效..

    http://stackoverflow.com/questions/11451535/gitignore-not-working
  • zylprog:不会用啊
    webbc:@zyl_prog 谢谢支持!
    zylprog: @webbc 已经收藏了,准备好好看看。
    webbc:@zyl_prog 哪里不会用?推荐看一下【廖雪峰】的博客,真的很有帮助
  • 纪宝宝:我也是刚学的,之前一直在用svn :blush:
    webbc:@纪宝宝 哦哦,加油,一起学
  • 修行小怪兽:加油!!我现在也在学
    webbc:@修行小怪兽 谢谢支持!共勉

本文标题:Git/GitHub学习第一天

本文链接:https://www.haomeiwen.com/subject/hmlelttx.html