简介:GitHub Desktop 是一个可让您使用 GUI 而非命令行或网络浏览器与 GitHub 交互的应用程序。 GitHub Desktop 鼓励您和您的团队使用最佳实践协作处理 Git 和 GitHub。 您可以使用 GitHub Desktop,通过视觉确认更改从桌面完成大部分 Git 命令。 您可以使用 GitHub Desktop 推送到、从中拉取和克隆远程仓库,以及使用协作工具,如归因提交和创建拉取请求。
简介:TortoiseGit provides overlay icons showing the file status, a powerful context menu for Git and much more!
我们安装git之后,想要对代码版本进行操作,必须通过Git Bash敲击命令行的方式来实现。但是敲击命令行的时候,我们并不能实时的看到我们的代码版本改变前后的变化,如果遇到强迫症的程序员,还必须再去线上的git仓库瞅一眼才放心。
另外,敲击命令行看起来简单方便,其实是很容易出错的,可能会敲错,可能会记错。有时候一个命令的错误,可能就需要一两个小时去弥补。
我们都知道Linux系统安装需要敲命令行,而Windows系统鼠标点击就可以。Windows就可以理解为是可视化的,当然现在Linux系统也有很多优秀的界面可视化工具。git可视化工具就像Linux系统的界面可视化工具,我们不必再敲命令行,直接在工具界面就可以对代码版本进行操作。
目前进行多款Git可视化工具使用看来,SourceTree是最好用,稳定,易操作的可视化工具。所以来今天我们介绍一下SourceTree。我会从安装到使用,把基本操作都详细的写一遍,并且录制对应的gif动图。
比如要合并xiaoMing分支到bigIce分支,首先切换到bigIce分支==>右键xiaoMing分支==>选择“合并xiaoMing至当前分支”==>确定
对有冲突的文件,SourceTree可以在文件状态里右键对应的文件,可选择以当前版本解决冲突,或者以传入版本解决冲突。
但是我们一般是在编辑器里解决,这样解决完冲突比较方便验证一下代码是否有错误。如果解决完毕没有错误,在产生冲突的对应文件右键==>标记为已解决即可。
在History右键某次提交记录==>重置当前分支至此次提交==>确定。
贮藏代码的作用主要是:
1,拉取代码前避免因冲突不能拉取。
2,当前代码暂时不需要,但是以后可能会用到。
如果同事小明在文件A新增了一段代码并上传,那么此时我们获取并拉取代码后,就会显示当前代码与拉取的代码有冲突,从而不能拉取。此时需要先将代码贮藏。
贮藏完毕后再拉取代码,拉取完代码右键对应的贮藏,应用当前贮藏,然后解决冲突即可。
贮藏只会贮藏在git管理中存在的文件,新增的文件不会被贮藏。
贮藏和应用贮藏:
贮藏
菜单栏贮藏==>输入贮藏描述==>确定
应用贮藏
侧边栏贮藏==>应用贮藏区XXXX==>确定
要按照
获取==>拉取==>提交==>推送
的步骤来操作,如果没有获取拉取,直接提交推送很可能会由于同事在你之前推送了同文件的代码,产生报错,从而推送失败。
如果并没有冲突,我们需要重新走一遍
获取==>拉取==>提交==>推送
的步骤即可。
如果有冲突,解决完冲突再走一遍
获取==>拉取==>提交==>推送
的步骤即可。
相信通过上面的学习,你一定能在项目中熟练使用SourceTree了,这个可视化工具还是很简单易学的。
在 gitee 上找到你想要参与的开源项目(这里以
林间有风/lin-ui
为例),然后点击右上角的 fork 按钮,就会在你自己的代码仓库中创建一个此开源项目的副本,后续所有代码提交都提交到此仓库,这样就不必担心未经审核的代码弄乱了原始仓库。
克隆/新建(clone):从远程仓库URL加载创建一个与远程仓库一样的本地仓库。
提交(commit):将暂存区文件上传到本地代码仓库。
推送(push):将本地仓库同步至远程仓库,一般推送(push)前先拉取(pull)一次,确保一致(十分注意:这样你才能达到和别人最新代码同步的状态,同时也能够规避很多不必要的问题)。
拉取(pull):从远程仓库获取信息并同步至本地仓库,并且自动执行合并(merge)操作(git pull=git fetch+git merge)。
获取(fetch):从远程仓库获取信息并同步至本地仓库。
分支(branch):创建/修改/删除分枝。
合并(merge):将多个同名文件合并为一个文件,该文件包含多个同名文件的所有内容,相同内容抵消。
贮藏(git stash):保存工作现场。
丢弃(Discard):丢弃更改,恢复文件改动/重置所有改动,即将已暂存的文件丢回未暂存的文件。
标签(tag):给项目增添标签。
工作流(Git Flow):团队工作时,每个人创建属于自己的分枝(branch),确定无误后提交到master分支。
(terminal):可以输入git命令行。
每次拉取和推送的时候不用每次输入密码的命令行:git config credential.helper osxkeychain sourcetree。
检出(checkout):切换不同分支。
添加(add):添加文件到缓存区。
移除(remove):移除文件至缓存区。
重置(reset):回到最近添加(add)/提交(commit)状态。