Git使用小技巧之挑拣合并】的更多相关文章

先想想一个情况,现在我们有一个功能急需要发布到线上,但是这个功能相关的代码所在的测试分(test)支有很多不应该发布的代码,那么这个时候我们就需要将与这个代码相关的提交选择性的合并到master上并发布.如果你还不知道git cherry-pick命令的话,很有可能你会从master分支上检出一个新分支,然后在把相关的代码copy到新分支上然后再合并回master.当然这么做确实可以达到最终的目的,但是手动copy很容易遗漏某些东西,那么我们这篇文章就来讲解一下git cherry-pick命令…
git 已经成为了我日常必备工具之一,我总结我几乎每天使用的8个有用(且简洁)的git技巧.   使用-p选择性添加 当你想提交内容时,你可以通过使用 git commit -am 来选择所有文件或使用 git add file 来添加特定文件.然而,有时候你可能想只添加文件的一部分来提交.你可以用 git add -p 交互性地选择哪些你想提交的部分. 在选择完你所想要提交的区块后,只需要做一个 git commit(没有 -a),这样只会提交选中的部分.同样可以使用 git checkout…
想要获取更多文章可以访问我的博客 - 代码无止境. 这是一个普通的工作日,小代正在勤勤恳恳的写代码.这时陈BOSS走到小代身边,跟小代说:"我们的代码需要同时推送到Github和码云两个仓库,你研究一下怎么搞吧." 乐于研究和学习的小代自然是毫不犹豫的答应了下来. 准备工作 好,我们先来看下完成这篇文章的学习需要准备哪些东西.自然是一个本地的git仓库. mkdir git-test cd git-test git init touch README.md 执行了这几行命令之后,我们还…
想要获取更多文章可以访问我的博客 - 代码无止境. 小代同学在使用Git的过程中发现,每次向远程仓库推送代码的时候都需要输入账号密码.做为一个程序员,多多少少都会有偷懒的思维.那么如何才能避免每次都要输入账号密码呢?一番研究之后,小代同学发现了两种实现方式.一种是让Git记住密码,第二种就是使用SSH协议推送. 准备工作 首先我们需要准备一个和小代差不多的环境,这样才能完整的模拟小代同学的操作.第一步我们需要在Github上创建一个仓库,如下图所示. 远程仓库创建完成后,我们需要将其克隆到本地.…
一 分支管理 1. 新建分支 在master的基础上创建新分支dev 2. 推送分支 将新建的分支dev推送到远程 3. 切换分支 4. 合并分支 当我们在dev分支完成代码修改并测试通过后 需要将dev分支合并到master分支 首先把dev分支代码全部提交(Commit+Push) 然后切换到master分支 再将dev分支合并到master分支 最后更新master分支代码并提交(Commit+Push) 5. 分支回滚(2种方式) 先说说Git操作文件的颜色变化 红色 暂未加入版本控制…
1. 合并一个分支的某次提交到另一个分支上 例如 将dev的某次提交 asfdiwehfsalkdnva872383 合并到master # git checkout master # git cherry-pick asfdiwehfsalkdnva872383 上面那一串字符串是某次提交的 commit_id 可以通过 git log 查看 2. 将一个分支 dev 合并到另一个分支 master # git checkout master //首先要在 master分支上 # git me…
想要获取更多文章可以访问我的博客 - 代码无止境. 日常的开发,我们难免会创建错误的git提交记录,整个时候git给我们提供了两个命令来解决这个问题.一个命令是git reset,另一个是git revert.两者有啥区别呢?两者主要的区别是,git reset命令是回滚某次提交,被回滚的提交将不会出现在提交记录中,而git revert命令是创建一个新的提交来达到撤销的目的,被撤销的提交和撤销的提交都会出现在提交记录中. 准备 首先呢,我们还是需要准备一个git仓库,并且准备一个可以修改的文件…
 想要获取更多文章可以访问我的博客 - 代码无止境. 在开发的过程中可能会经常出现下面这种情况,我们正在开发某个功能,当前分支的内容比较乱,不太适合提交,而此时我们需要切换到其他分支上处理一些事情.这个时候该怎么办呢?难道是将修改先备份然后丢弃修改再切换到另外的分支上?答案肯定是否定的,今天我们就来介绍如何使用git stash命令来完美解决这种窘境. 准备 首先我们需要准备一个git仓库,并准备两个分支(master和dev): mkdir git-test cd git-test git i…
前言 我们可以把自己的代码放到github上,但是我们有的文件或者文件夹不想提交到github上,这时候用到一个忽略文件 操作方法 * 在项目根目录创建一个 .gitignore文件 * 打开.gitignore文件,进行编辑,将忽略的文件写在这个文件中 忽略文件内容说明 # 表示此为注释,将被Git忽略 1.txt 表示忽略1.txt 文件 *.txt 表示忽略所有 .txt 结尾的文件 !2.txt 不忽略2.txt这个文件 /TODO 表示仅仅忽略项目根目录下的 TODO 文件,如果这个文…
前言 本文主要写给使用命令行来操作Git的用户,用于提高Git使用的效率.至于使用命令还是GUI(Tortoise Git或VS的Git插件)就不在此讨论了,大家根据自己的的喜好选择就好.我个人是比较推荐使用命令行的,因为命令行是原生的客户端,当熟悉了命令行以后,使用效率并不会比GUI低.而且我是从GUI(Tortoise SVN)转命令行的,刚开始的时候也是吐槽命令行的“非人性化”,但我走出了舒适区,真正使用起命令行后,我才发现了自己之前的想法是肤浅的. 指令别名 指令别名就是给一些常用的指令…