位置: 编程技术 - 正文

Git在MAC下的安装及使用方法(mac安装git客户端)

编辑:rootadmin

推荐整理分享Git在MAC下的安装及使用方法(mac安装git客户端),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:macbookpro安装git,git mac安装,macbookpro安装git,mac上git下载和安装教程,git安装教程mac,mac下载gitbash,macbookpro安装git,git mac安装,内容如对您有帮助,希望把文章链接给更多的朋友!

0. 写在最前

基本上所有的经验都来自一本很好的书:Pro Git。网上能直接看到内容,点这里,我给出的链接是英文的,最下面的链接能直接转成中文的。

此外,git官方的guide也值得一读,地址在这里,这篇文章里不单有很详细的设定细节(主要看这个),还有几篇简单的tutorial。

最后,还有一本中文的好书,Git权威指南,官网在这里。我在网上找到了第一篇,第1 篇:初识Git。这篇文章好在从很多实用场景的方面来比较了老式VCS工具,例如SVN和GIT之间的差别。从而阐明了Git优秀在什么地方。这里我备份了一份,以防万一。

Edit --:最近感觉自己写的这篇文章过于基础,很多git的优势和特性都没有解释清楚,特地撰文一篇作为补充:Git Introduction

1. 优势

简单罗列下使用Git的优势:

版本保存为快照,而非差异记录,细节保存完全。所有数据都要进行checksum,并将此结果作为数据的唯一标识和索引,时刻保持数据完整性。几乎所有操作都在本地,速度快,且不受环境影响。不单单文件保存在本地,连历史数据都保存在本地,即便查找日志也无需服务器介入。创建branch以及切换branch非常方便快捷,并不是维护多个拷贝,而是由git内部的机制处理。

其实我觉得第一点和第四点作为一个VCS,都会做到,这其实并没有什么。关键还是后面吸引人,特别是第四点,大大提升了集团工作的效率。有兴趣的读者可以到“写在最前”部分给出的链接里的PDF中找到更多细节。

2. 软件安装(MAC)

MAC上的Git安装还真是出人意料的简单,下两个binary文件,然后就完成了。当然,设置稍嫌麻烦,需要在命令行下执行点命令。

Git本体的下载: --:这篇文章读的人比较多,我这里更新下,我已经很久没在用GitX这个GUI工具了,MAC上最好的GIT免费GUI工具是SourceTree(没有之一)。此外,最好的GIT代码开源网站是GitHub,最好的GIT代码私有库是BitBucket。

设置方面其实有篇很好的官方guide,大家可以在这里参考。关于SSH的设置稍微复杂了点,这里就不赘述了,见前述的guide。完成之后还需要额外设置下账户信息,之后的使用就畅通无阻了:

3. 关于本地仓库和远程仓库

3.1 本地仓库和远程仓库的关系

在前面所列举的Git的优势之中,有一条是说git在本地也能很好运作,无需远程服务器连接。要做到这点,git会在你clone项目的时候将所有的远程数据加载到本地仓库中。

在用户工作的时候,从本地仓库修改文件(modified),写入git的暂存区域(staged),将暂存区域的内容提交到本地仓库(committed)。这一系列的工作都是在用户本机的本地仓库上进行的。当你将本地的仓库push到远程服务器上的仓库之前,远程仓库里是没有你的工作成果的。我第一次使用git的时候就很惊奇地发现为啥我committed的变动在github网站上查不到。后来才知道还需要将本地的仓库push到远程服务器上。这里简单介绍下相关的几个命令:

fetch:获取远程仓库当前最新代码,并不进行自动合并,必须手动执行。pull:获取远程仓库当前最新代码,并自动进行合并。push:将本地仓库中的数据推送到远程仓库,git push [remote-name] [branch-name]。e.g. git push origin master。

3.2 理解Git项目中的remote

在项目文件夹下执行git remote -v,你会看到当前项目下所有的remote的信息。一个新接触Git的人一开始肯定搞不明白remote是怎么回事,看仔细了其实也就明白了。其实remote就是远程仓库。这里你需要明白的是远程仓库这个概念不单单只是github提供给用户的官方代码仓储,同时也是多人协同工作的一种方式。当多人同时对一个项目进行工作的时候,对于其他的项目组成员来说你当前的本地仓库就是一个远程仓库。

Git在MAC下的安装及使用方法(mac安装git客户端)

相信很多人在第一次使用git的时候是使用git clone 命令从github上一个已经创建好的项目中拉代码到本地。这个时候,其实你已经创建出第一个remote出来了。这个被clone出来的remote仓库就直接被命名为origin。

举个例子来说,当前有个项目叫app,存放在company仓库下,参与项目的有jonathan,craig,bobby。作为程序员jonathan,项目app就可能有下述几个远程仓库:

origin git@github.com:company/app.git (SSH登陆链接,company账户,主仓库)craig (craig在他本地创建的工作branch)bobby (bobby在他本地创建的工作branch)

这里只有origin这个远程仓库jonathan是拥有写权限的,其他只有读权限。

要添加远程仓库,执行:git remote add [shortname] [url]。记得,这个时候数据还没有被加载到本地,需要执行git fetch [shortname],来加载。使用git remote rename [old-name] [new-name]来进行重命名,使用git remote rm [shortname]来删除。

4. Git里的分支管理

4.1 Git分支管理的原理

git分支管理的原理其实是依赖于git进行版本管理的原理的,具体的细节大家可以看这里。我这里简单举个例子来描述下,git的分支管理里的branch和文件的关系就像是c程序里的指针和内存的关系。c程序里的可能会有多个指针指向同一个内存地址,git里也是这样的,多个branch同时使用的其实是一份代码文件,而我们创建和切换branch也只是创建或者切换一个“指针”而已。所以它的速度才可以这么快。

4.2 Git分支管理的优势

毋庸置疑的高效,这个完全没有也不需要有争议。老式的VCS全部都是基于文件进行版本和分支管理的,而git则是基于其自身的版本管理快照机制进行的。一个创建和管理分支需要维护文件,而另一个则只需要创建一个虚拟的“指针”,高下立判。

4.3 Git分支管理的使用和几个细节

列出所有branch:git branch。创建branch:git branch hotfix。切换branch:git checkout hotfix,这里用的是checkout,稍微有点奇怪,千万记住。删除branch:git branch -d hotfix。

关于merge和conflict可以看这里。

这里还有一点需要说下,一般来说一个项目刚创建,默认的branch的名字是master。而git还有一个当前正在使用分支的概念,因为所有的分支都是工作在一份代码基础上的,所以我们不能通过文件位置的不同来区分分支,所以git创建了一个虚拟分支“HEAD”,HEAD指向的分支就是用户当前checkout正在使用的。

当你本地的暂存空间里有未提交的内容的时候,git不会让你切换到其他的branch上,这个时候,我们有两种解决方法,一种是创建一个临时branch,commit临时内容到这个branch,等以后回来了再拿下来,并删除临时branch。另一种则是使用git的储藏功能:git stash,所有的临时内容就被存储起来了。你可以使用git stash list来列出你所有暂存了的临时内容。使用git stash apply [stash-name, leave it empty to use lastest one],来恢复你暂存的临时内容。使用git stash pop来恢复暂存内容,并删除暂存记录。使用git stash drop [stash-name]来删除暂存内容。

5. 其他

5.1 标签

默认情况下,git push并不会把标签传送到远端服务器上,只有通过显式命令才能分享标签到远端仓库。git push origin [tagname]。使用–tags标签表示推送所有本地新增标签,git push origin –tags。

5.2 checkout

Git里的checkout有一个很有意思的用法,就是回滚未提交的文件修改:git checkout — 文件名。这一点和一般的VCS完全不同,用的时候千万小心。

5.3 为什么我一开始没感受到Git的好处

因为我的工作实在是太基础了,很多在版本控制中经常遇到的问题,特别是团队合作问题和工程量级导致的问题我都没遇到过。所以我一开始是不太容易理解Git的很多方便特性。

Mac怎么设置默认文本打开方式?设置默认文本打开方式的方法 Mac设置默认文本打开方式的方法第一步:打开Finder,选择文稿。第二步:选择一个文本,点击打开方式,选择其他。第三步:程序会默认打开你所安装

苹果mac修改用户名与密码的方法 苹果电脑如何修改开机密码 修改电脑开机密码相信很多朋友都会,因为多数朋友对于Windows电脑操作已经相当熟练,不过对于很多初次接触苹果电脑的朋友来说,由于MacOS与Windows系

mac如何安装dmg软件?苹果电脑安装应用程序方法介绍 对于windows用户来说,安装软件那是非常容易的事,点击安装,然就就能一步步地安装了,非常的简单,但是苹果电脑就不是那么简单了,要一点技巧。

标签: mac安装git客户端

本文链接地址:https://www.jiuchutong.com/biancheng/356760.html 转载请保留说明!

上一篇:苹果系统怎么修改User用户密码?Mac修改User用户密码教程(苹果系统怎么修改语言)

下一篇:Mac怎么设置默认文本打开方式?设置默认文本打开方式的方法(mac怎么设置默认打开方式)

  • 金税盘的会计科目
  • 增值税加计抵减的行业
  • 消费税的会计处理分录
  • 预缴增值税需要预缴附加税吗
  • 收入用结转吗
  • 税控盘技术维护费申报时候怎么填报
  • 劳务服务公司不含派遣,能接外包吗
  • 业务招待费扣除基数的收入包括哪些
  • 开票软件服务费全额抵扣怎么做账
  • 收取车辆使用费怎么做账
  • 转让土地使用权属于销售无形资产吗
  • 原材料盈亏会计分录怎么写
  • 没有合作会怎么样
  • 旅游休闲用地
  • 运费发票没有开 怎么做到成本
  • 非同一控制下企业合并的交易费用
  • 补发工资如何缴纳工人所得税的法条
  • 小规模保安公司收取服务费时如何开票
  • 企业销售食品过期处罚
  • 工会上缴40%的经费法律依据
  • 鸿蒙系统快捷键
  • PHP:json_last_error()的用法_JSON函数
  • 领用材料已抵扣进项税
  • 金融企业会计计提贷款呆账准备金主要贯彻了
  • 截取字符串php
  • PHP:imagepolygon()的用法_GD库图像处理函数
  • 生产企业免抵退税实例
  • 会计学中借和贷怎么区分
  • php的判断语句
  • 员工报销的话费要缴纳个税吗?
  • 怎么做一个简单的机器
  • vue中利用ref实现更灵活的子向父传值
  • 未分配利润为负数怎么调整
  • 公司扣个税查不到怎么办
  • 房地产股权转让涉及哪些税费
  • RedHat6.5/CentOS6.5安装Mysql5.7.20的教程详解
  • 怎么做零售企业
  • 银行存款 会计科目
  • 企业的资产评估报告在哪里获取
  • sql2000安装不上是什么原因
  • 股权并购与收购的区别
  • 出售金融资产计入
  • 未税金额怎么算税费
  • 公司内部食堂招待费账务处理
  • 委托生产的会计分录
  • 房地产企业内部控制的现状
  • sql server数据表
  • mysql sql语句性能调优
  • win7系统资源管理器频繁未响应
  • xp怎么删除系统
  • windows xp运行
  • window10打开rar文件
  • linux px
  • vim 多窗口启动以及相互切换
  • gain_trickler_3202.exe 进程查询 gain_trickler_3202进程是什么文件
  • 双液浆常用配合比
  • xp电脑关机后自动重启是什么原因
  • win7由于所要求的文件丢失或损坏
  • win10系统附件在哪里
  • rhel6.5安装
  • cocos2d::DrawPrimitives和DrawNode分别实现画板功能
  • python 密码
  • Node.js中的包管理工具是什么
  • 使用多进程web
  • windows与苹果
  • 批处理copy合并文件
  • word-wrap在firefox中不起作用的解决方法
  • js css函数
  • opencv for linux
  • 怎么用python下载付费音乐
  • android应用程序
  • android深度探索(卷1):hal与驱动开发
  • inputchange
  • java教程 视
  • 深圳国家税务局赵雨婷处长
  • 清税申报表怎么填写
  • 北京大兴开发区房价
  • 仓储物流企业的事故指标
  • 特许权使用费包括哪些内容
  • 2023年印花税税目表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设