SourceTree使用

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

一、安装sourcetree1.git插件安装两个插件:msysgit是Windows版的Git,从下载安装即可Git—preview.exe,未找到官网版本,从网上搜索安装包即可【推荐这个,这个能够在win下使用git命令行】以上两个插件安装一个即可2.安装sourcetree安装sourcetree,下载网址:先安装git插件,sourcetree直接按照提示安装即可3.配置sourcetree打开sourcetree,点击“工具”“选项”,如下图“一般”配置页面:除截图中红圈外,其他均是默认即可“比较”配置页面:默认配置即可“git”配置项:“合并时不要使用快进配置项,总是创建提交”---配置项意味着每次分支合并都会创建新的提交节点,推荐这样的使用方式“使用gitbash作为默认终端”–如果同时安装了sysmgit和gitbash时,此配置项生效,建议使用gitbash“验证”配置页面:此配置项用于添加远程服务器交互时的身份验证,采用“账号/密码”方式,如果前面已经配置了公钥私钥访问的方式,此配置项可以忽略二、配置gitlab添加SSHkey1.点击MyProfile2.点击SHHpulibckeys下面的AddPublicKeys3.点击key文本框下面的here4.出现添加SSH的示例三、sourcetree认证配置(秘钥和密码方式)1在桌面上打开GITBASH终端2.复制第一行中的复制到终端中,然后一直回车3.复制第二行中的到终端中,然后回车4.复制该段key到gitlab中然后将其中第二段以后的换行缩进,然后点击Save5.切换到SourceTree,选择Options然后在SHHClient选项中选择OpenSSH,其他的不需要修改6.使用命令行点击右上角的“终端”,则可以用类似于linux下的纯命令行的方式,操作git仓库,6、账号/密码登陆每次克隆仓库时,sourcetree会要求输入账号密码,录入后会自动保存账号和密码,保存位置:工具-选项-验证,如下图如果要求改,点击编辑,更新密码如果不需要,直接点击删除7.https方式无法获取代码解决方法有时发现https方式无法获取代码:如在sourcetree下输入https开头的url,获取代码,报错如下图所示:解决方法:需要在git命令行下执行:gitconfig--globalhttp.sslverifyfalse四、开发使用场景1.在gitlab中选择一个项目,复制地址,然后clone到SourceTree中2.点击Clone3.将复制的地址粘贴到SourcePath中,然后将鼠标移动到DestinationPath文本框上点击。如果出现thisisaGitrepository,表示成功,然后点击Clone.如果是第一次使用的话,会弹出输入账号密码的框,在上面输入你的邮箱和密码就可以了。4.生成代码仓库代码clone下来后,如下图所示,1、是仓库在本地的标签,不同名称为不同仓库2、本地仓库的所有分支:在clone仓库是如果不指定checkout分支,默认本地仓库的分支时master,且只有这一个分支3、仓库的标签4、远程仓库在本地的副本,每次clone一个新仓库时,会把远程仓库的所有分支都获取到本地仓库,如下图所示有三个仓库:master、develop、yunshang_feature_15将指定的开发分支获取到本地首次clone仓库,默认本地分支时master,如下图,master前有个小的打钩“√”,意味着当前的本地分支是master如果本次模块开发在yunshang_feature_1上,则需要将yunshang_feature_1从本地检出,将鼠标放置远程的yunshang_feature_1上,右键,点“签出origin/yunshang_feature_1……”提示如下图,点击“好”等待数秒,查看当前已是yunshang_feature_1分支,6编写代码,提交版本库开发人员将使用自己的开发工具打开仓库所在文件夹,进行代码开发,在此不做说明修改文件后,点击左上角“提交”,如果是首次创建的文件,需要在先点击“添加”按钮会弹出提交页面:在提交信息一栏,填写提交信息,不填写提交信息会有提示,要求每次提交必须填写提交信息核对每个文件的变更内容如果无误,点击右下角进行提交提交成功,会显示如下:7打标签代码在本地提交完毕后,打上里程碑标签步骤:一、选定分支二、打标签,默认是代码最新8、自测通过,推送至远程yunshang_feature_1分支点击“推送”弹出推送页面:勾选yunshang_feature_1,则推送至远程的yunshang_feature_1注意:要求推送时,本地和远程名称必须一致,也就是说不允许本地分支随意推送至不同名的远程分支;如果有推送的需求,先在本地建立相同名称本地分支,再推送至同名远程分支推送成功:9创建本地分支情景:开发如果想更自由更方便的做一些开发或测试相关的代码,不想污染了比较正式的开发分支,则可以在本地继续创建分支。本实例中,本地yunshang_feature_1是自己标准的本地开发分支,不想过度提交或者其他原因,则可以在本地yunshang_feature_1创建新的分支操作:选中yunshang_feature_1,点击“分支”按钮弹出框如下:1、新的分支名称2、创建后直接切换到这个分支3、可以选择在这个分支的指定版本创建新的分支,如果不指定某个提交,则默认从最新的提交创建分支4、点击按钮创建分支创建成功,通过途中红框可以看出,多个分支的最新提交版本一致现在开发可以在yunshang_feature_1_test_1上随意提交任何东西,既不会影响别人,也不会影响自己,即使代码污染了,也可以右键直接删掉此分支10分支合并假设开发在本地yunshang_feature_1上开发了新功能,但是本次需要提交到master上步骤如下:1、Yunshang_feature_1合并到本地master2、更新远程master仓库,并合并到本地master3、本地master分支推送到远程master分支操作如下1、Yunshang_feature_1合并到本地master:首先切换到本地master本地yunshang_feature_1合并到本地master2更新远程master仓库,并合并到本地master选中master,点击右键,点击红框按钮,选择“好”提示合并成功3、本地master分支推送到远程master分支点击“推送到origin/master(已追踪)”提示推送成功11冲突解决分支合并时会产生冲突,解决冲突办法和svn一致:分支A和分支B都是从master同一次提交创建而来;冲突解决方法:分支A合并到分支B,产生冲突,找出冲突文件,将A中冲突内容改成和B一致后,将修改内容再次提交到B此时分支A的info文件内容是:分支B的info文件内容合并操作:1、切换版本库至分支B2、合并分支A到B会弹出冲突提示:冲突的内容提示:1、本次合并产生一条新的提交记录2、显示出本次合并产生的冲突文件,合并量大时可能不止一个3、显示当前冲突文件的冲突内容,途中显示的冲突内容与上文分支内容一致打开冲突文件查看,和sourcetree界面显示一致:3、冲突解决方法目前看,当前的检出版本是分支B(注意,由于冲突的存在,检出的分支已经不可切换了,不信可以尝试下)将B中与A冲突的文件内容,改成和A一致;去掉显示的””、“=========”和””等提示符,再在分支B中重新提交。B分支修改后info文件:点击“提交”合并成功

1 / 27
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功