github篇
名词
git是什么?
git是版本控制软件,对于代码类用处优于svn,不善于psd等二进制大文件版本控制(扩展插件支持)。一般mac中会集成在系统中,win下需要自行安装
推送 / push
推送将本地更改提交到服务器
拉取 / pull
从服务器拉取更改到本地
抓取 / catch
从服务器获取更新内容,不抓取
提交
提交新的更新到当前分支,再通过推送提交到服务器,所以提交更改需要两步,因为分为了两步,所以本地的修改可以暂存在本地,而等完整提交后再推送。
分支
从master/主分支上分支出自己独立的分支,可以在本地创建本地分支,也可以在服务器创建分支,并且可脱离主分支进行独立分支开发,但不进行合并会导致代码越发难于合并。创建自己独立分支后,拉取代码并不能直接融合其他人的项目代码,需要自己在分支和合并中灵活操作。
合并
用于将其他分支合并到当前分支,你可以把独立分支合并到主分支,或者从分支A合并到分支B
github是什么?
github是指 github.com 网址,共个人和商业进行项目管理的一个平台,它包括了git也集成了交互和反馈等沟通方案。
sourcetree 是什么?
sourcetree是git多平台可视化客户端软件,对于服务端可能意义不大,但客户端可以简化操作,灵活管理
https://www.sourcetreeapp.com
github与sourcetree协同操作
创建git项目
到当前项目code根目录,拷贝远程路径
添加到软件
-
选择‘从URL克隆’
-
选择本地项目路径
-
等待拉取完成
-
将项目文件移动到此文件夹,或创建文件或工程项目
-
双击Sourcetree的项目展开
-
选择要提交的文件,点击提交,勾选推送
注意推送的分支,这里是master主分支
-
等待提交完成
提交完成后在github上就能看到文件了
注意冲突
尽量避免直接提交到主分支,这样当多个人协同时会造成不必要的冲突
简单解决方法
-
当修改本地内容后,创建本地分支
-
名字随便起,这里我起了local作为本地分支名
-
创建完分支后,本地当前分支从master就移动到了local
-
这时候提交的内容就在此分支上
注意一点:立即推送的话,会把当前分支也一并推送到服务器,如果更新,则远端服务器列表会列出本地同名分支
-
当服务器有当前文件到更改,我这里直接在github上修改了readme提交到了master分支,主动造成冲突
-
回到客户端软件,抓取所有分支
-
这时候master分支提示有需要拉取的远程更新
-
将本地修改提交到本地分支
-
双击master切换回master分支,并拉取最新更新
-
对local分支点右键,合并local到master
-
这时候解决当前文件到冲突问题
对当前文件选择使用自己还是服务器下发的文件,或者对文件内容修改进行校对
使用我的版本‘mine’对应的master当前改动,使用他人版本‘others’为本地local的更改。看需求。
-
提交到了服务器,最终修改变为了本地修改的内容。
此时本地分支最好移除,再次更改从master再分离出分支再进行修改。
补充
这是sourcetree最基本的操作,当你在项目中需要灵活应对。
sourcetree vs azure链接调试方法写在了下一篇文章
传送门:https://www.jianshu.com/p/0c74ac62c75d