【第二篇】
一、Git管理和Svn管理区别
1、最核心的区别Git是分布式的,而Svn是集中式的。
2、Git每一个电脑都可以看成一个服务器,而Svn只有一个服务器;在使用过程中,默认将一台电脑当成"中央存储库",其他电脑从这获取最新的代码和把修改的文件推送到这。"中央存储库"24小时为其他电脑服务
3、Git在无网络环境下也可以进行代码提交到本地服务器,Svn无网不能提交。
二、Git使用工具安装及破解
目前使用最普遍的Git管理工具是SourceTree,也可以使用终端,或者其他软件例如GitHub客户端。在网上下载最新的SourceTree,找个破解码即可。这里不再说明。
三、SourceTree的使用1、新建项目
这里在GitHub上新建一个项目,项目地址为
2、克隆项目
步骤一:点击新建仓库,选择从URL克隆
步骤二:输入项目地址,和在本机上存储的地址,点击克隆
步骤三:克隆完成后,进入控制主界面,有本地默认分支master和远程服务器分支master,本地分支支持自定义改名
3、提交项目
步骤一:项目有改动的时候,改动的内容会在未暂存文件,如果改动内容是新加的文件,那么默认会加到暂存文件里面,先点击提交,提交到本地仓库master分支。注意添加commit日志,方便后期维护。
步骤二:在本地master同步服务器之前,先拉取下服务器的更新数,如果有更新,先更新代码到本地master分支,如果有冲突,解决冲突,没有冲突推送到服务器即可。
步骤三:推送完成之后可以看到控制界面如下。
4、分支使用
项目开发的过程中,默认的都是对master分支进行操作,如果项目人员较多或者更新比较频繁的项目,就要考虑使用分支。
(1)新建分支,在默认分支master新建depAAA分支
(2)创建分支成功后,在depAAA分支下,给项目添加注释说明“我是depAAA分支,我在进行开发”然后在分支上进行提交,提交之后如下,此时depAAA分支领先master分支和其他分支
(3)切换到master分支下,可以看到并没有我刚才添加的注释
(4)如何把添加的内容合并到master分支上?把分支切换到master分支上,点击合并,把depAAA合并到master分支上,合并之后,depAAA和master分支都在flow最前边。
(5)切换到master分支下,提示有最新的推送,这个推送就是刚才我添加的,提交到远程仓库后,远程的master分支和本地的depAAA、本地的master在flow保持了一致。
5、使用进阶Git Flow
廖雪峰git教程:https://www.liaoxuefeng.com/
gitflow:学习: https://www.cnblogs.com/cnblogsfans/p/5075073.html
SoureTree支持Git flow ,这个为更标准的git管理流程
6、添加SSH
6.1、关于SSH
这段话的意思是通过使用SSH协议,就不用每次在使用SourceTree或者其他管理工具的时候的时候输入密码了。
6.2、查看本地是否有SSH
(1)显示mac系统下的隐藏文件
缺省情况下,在Mac下是不显示隐藏文件的,Finder也未提供设置是否显示隐藏文件的选项,不像Windows下,有一个“文件夹选项“设置界面里可以控制,但这并不表示Mac下无法显示隐藏文件,我可以通过“终端”,用命令行设置这个选项,命令如下:
显示:defaults write com.apple.finder AppleShowAllFiles-bool true
隐藏:defaults write com.apple.finder AppleShowAllFiles-bool false
然后执行下面这个命令即可。
kill all Finder
(2)、查看SSH路径
6.3、生成SSH文件
无论是gitlab还是github,都在个人设置里面有添加sshkey的地方
步骤一:在终端输入ssh-keygen -t rsa -C"$your_email"
中间过程要输入存放地址,加密key,我输入是123456
步骤二:查看结果
cat ~/.ssh/id_rsa.pub
步骤三:把加密后的串添加到gitlab或者github即可。
步骤四:从远程服务器把git协议的路径,克隆项目
7、常见问题
(1)提示远程仓库有更新,但是更新不了
确认本地修改的文件是否都提交了暂存区,如果没有提交,需要先将本地修改提交,根据提示操作即可。
(2)操作同一文件冲突
把自己项目提交到暂存区,更新别人的提交,出现冲突,为两个人同时修改了同一个文件,根据需要,解决冲突重新提交即可。
(3)分支删除不掉
首先确认当前分支是那个,在当前分支下是没法删除本分支的。
领取专属 10元无门槛券
私享最新 技术干货