/git/YSJ.git拉取远端仓库git pull origin master第一次推内容git push -u origin master直接使用远端项目名称首先将远程代码拉取到本地git clone...merge feature git push origin :feature合入feature后拉出对应的release/feature分支,后续bug修复在release/feature上...git checkout -- readme.md暂存区回退git reset HEAD readme.md版本回退# 上一版本git reset --hard HEAD^# 指定版本git reset...git rebase develop在rebase的过程中,也许会出现冲突conflict,在这种情况,Git会停止rebase并会让你去解决冲突;在解决完冲突后,用git-add命令去更新这些内容的索引...-1.2.1这里是其他的回退git reset --hard ORIG_HEAD强制推送到远端git push -f origin master 对于远端进行回退revert 放弃指定提交删除最后一次提交
至于如何在GitHub上新建仓库,网上有很多教程,这里不再赘述了。 git push -u origin master 把本地仓库提交到远程仓库。...回溯之后,git log查看一下发现离我们最近的那个版本已经不见了。但是我还想要前进到最近的版本应该如何?只要git reset --hard + 版本号就行。...git tag 打标签,默认为HEAD。比如git tag v1.0 默认标签是打在最新提交的commit上的。...因为创建的标签都只存储在本地,不会自动推送到远程。所以,打错的标签可以在本地安全删除。...一次性推送全部尚未推送到远程的本地标签 git push origin :refs/tags/ 删除远程标签 git config --global color.ui
refs/heads/ref 代表本地分支 refs/remotes/ref 代表远程跟踪分支 refs/tags/ref 代表标签 特殊引用 HEAD HEAD始终指向当前分支的最近提交。...git revert HEAD^ 进行倒数第 2 次内容逆转, git revert HEAD~3 进行倒数第 4 次内容逆转, git revert -n master~5..master~2 进行倒数第...remotes/remote/* 在 git push 操作中,你通常要提供并发布你在本地特性分支上的变更。...因此,在典型的 git push 命令中,会把你的版本库中的源分支发送到远程版本库,方法是使用这样一个 refspec, 如 +refs/heads/*: refs/heads/* 应用补丁 patches...这意味着除非你修改了你在 Git 服务器上的密码,否则你永远不需要再次输入你的凭证信息。 这种方式的缺点是你的密码是用明文的方式存放在你的 home 目录下。
如果大家对Mac终端的命令还不太了解的话,可以参考我的上篇文章:学好Mac常用命令,助力iOS开发 Git的使用 有两种Git的使用方法,一种是通过终端命令控制,另一种是使用Git的图形管理工具——...在本地仓库下运行命令: Mac-Pro:~ kys-1$ git remote add origin yourGitAddress 然后,将本地库的所有内容推送到远程库: Mac-Pro:~ kys-...就可以通过命令: Mac-Pro:~ kys-1$ git push origin master 把本地master分支的最新修改推送到GitHub上去。...创建bug分支 在bug分支上修复完bug提交,就可以合并删除bug分支,如下: Mac-Pro:gitTest kys-1$ git checkout master Switched to branch...强制删除 标签管理 作用:标签作为版本库的快照,能够在需要的时候很快找到对应的版本库; 在指定提交节点上添加标签,默认的标签是打在最新提交的节点上的,使用git tag命令添加标签,使用git show
接下来,我们简单捋一捋这个过程: 下行路程:作为小前端的我在本地电脑(工作区)上的一个文件夹下进行初始化git init,紧接着马不停蹄的撸了一把代码,保存为file.html ---------...在dev分支上做编辑,并add、commit等操作后 # 切回master分支 git checkout master # ... dev分支上的修改不会出现在master分支上 # 把dev分支合并到...假设当前在master分支上,要合并dev分支 git merge dev # ... 发生了冲突 # 1....在dev分支上热火朝天干活ING ... 但完整模块还没有完成,并不想提交 ... 但线上出现紧急bug需要修复,必须切到master分支修改bug ... ... 该如何是好 ... 别怕!...切到master分支上,进行bug修复 ... git checkout master # 创建修复bug新分支 issue-101 git checkout -b issue-101 # ...
master # 切换到master分支上 git pull origin master # 把远程分支pull下去,及时更新 git merge dev # 把dev分支的代码合并到...(push) 本地修改推送到远端 推送到GitHub git push github master 推送到Gitee git push gitee master 也可以在使用NPM包管理工具的项目添加如下...--local core.autocrlf true 多个github账号下,生成的key不能同时在两个github下面使用,导致添加失败:Key is already in use 这时候在执行ssh-keygen...git revert是用一次新的commit来回滚之前的commit HEAD 说明: HEAD 表示当前版本 HEAD^ 上一个版本 HEAD^^ 上上一个版本 HEAD^^^ 上上上一个版本 以此类推...可以使用 ~数字表示 HEAD~0 表示当前版本 HEAD~1 上一个版本 HEAD^2 上上一个版本 HEAD^3 上上上一个版本 以此类推...
既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?...建议安装 Git Bash 这个 git 的命令行工具。 Mac 环境安装 在Git 官方下载地址下载 mac 安装包。按照安装向导安装即可。...在 Linux/Mac 系统中,ssh-keygen 随 SSH 软件包提供;在 Windows 上,该程序包含于 MSysGit 软件包中。...你就可以用下面的命令显示当前HEAD上的最近一次的提交(commit): (master)$ git show 或者 $ git log -n1 -p 我的提交信息(commit message)写错了...$ git fetch -p 我不小心删除了我的分支 如果你定期推送到远程, 多数情况下应该是安全的,但有些时候还是可能删除了还没有推到远程的分支。
既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?...建议安装 Git Bash 这个 git 的命令行工具。 Mac 环境安装 在Git 官方下载地址下载 mac 安装包。按照安装向导安装即可。...在 Linux/Mac 系统中,ssh-keygen 随 SSH 软件包提供;在 Windows 上,该程序包含于 MSysGit 软件包中。...Git Flow 详细内容,可以参考这篇文章:Git 在团队中的最佳实践–如何正确使用 Git Flow Git 在实际开发中的最佳实践策略 Git Flow 可以归纳为以下: master 分支...你就可以用下面的命令显示当前HEAD上的最近一次的提交(commit): (master)$ git show 或者 git log -n1 -p 我的提交信息(commit message)写错了 如果你的提交信息
,所以在这里我们不去引入更加复杂的各种分支的情况,也不涉及标签tag的操作,只讲在最简单的主分支上如何回退。...首先,Git必须知道当前版本是哪个版本,在Git中用HEAD表示当前版本,也就是最新的提交3628164…882e1e0(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD...只有一条时间线,在Git里,这个分支叫主分支即master分支。 HEAD严格来说不是指向提交,而是指向master才是指向提交的,所以HEAD指向的地址就是当前分支。...随着你不断提交,master分支的线也越来越长 (2) 当我们创建新的分支,例如dev时,Git新建了一个指针叫dev,指向master相同的提交,再把HEAD指向dev,就表示当前分支在dev上...首先确定要在哪个分支上修复bug,假定需要在master分支上修复,就从master创建临时分支: $ git checkout master Switched to branch 'master' Your
功能 git stash 在暂存后工作区会回退到最近的一个commit的状态,以便开建新分支;比如我们修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除; 当手头工作没有完成时,先把工作现场...是默认的 fast-forward:在master开始的新分支前进了几个版本之后如果需要merge回来,此时master并没有前进,那么这个模式就是把HEAD与master指针指向新分支上,完成合并。...master分支是主分支,因此要时刻与远程同步; dev分支是开发分支,团队所有成员都需要在上面工作,所以也需要与远程同步; bug分支只用于在本地修复bug,就没必要推到远程了,除非老板要看看你每周到底修复了几个...push到了远程仓库 本地与远程建立关联 如果已经有了本地工程文件夹,如何分享到github远程仓库呢,当然此时我们已经在github上创建了一个新的空白项目,还是叫learn-git,在本地文件夹中...master 3.3 多人协作 多人协作的工作模式通常是这样: 首先,可以试图用git push origin 推送自己的修改; 如果推送失败,则因为远程分支比你的本地更新,
:rekii/bg.git 克隆到本地 这里的本地是指开发机(vim玩家),windows pc(ide玩家),mac(我)。...upstream/master 完全没必要) git rebase master 把dev分支的修改rebase到master分支上 (git pull 的时候有一个--rebase选项,为何不能在master...上直接修改,然后通过git pull upstream master --rebase进行rebase?...里推任何提交(建议关闭其他人的push权限,保留接受PR的权限) rebase时建议合并提交,减少放在upstream/master的提交次数 不放心代码长时间存在本地?...设置默认分支的方法: git config branch.master.remote origin git config branch.master.merge refs/heads/master 但是在我这里似乎需要改成
概述 本文记录了笔者在使用Gerrit(一种免费、开放源代码的代码审查软件)过程中的一些微小的经验,在这里做个简单的分享。...ssh://tusi@ip:port/project-name 创建develop分支 一般我们不会将代码直接提交到master分支,而是会选择在develop分支进行开发 git checkout...add src 提交改动 将暂存区内容提交到版本库 git commit -m '测试commit' 推送到远程分支 git push origin HEAD:refs/for/develop 常见报错...在Gerrit上abandon这次push 2. 软回滚 git reset --soft origin/master 3. pull代码 git pull 4....git status hotfix合入master git merge origin/hotfix/20190909 git push origin HEAD:refs/for/master 强制与远程分支同步
建议安装 Git Bash 这个 git 的命令行工具。 (4)Mac 环境安装 在 Git 官方下载地址下载 mac 安装包。按照安装向导安装即可。...# 我想扔掉本地的提交 (commit),以便我的分支与远程的保持一致 先确认你没有推 (push) 你的内容到远程。...一种方法是: (master)$ git reset --hard origin/my-branch # 我需要提交到一个新分支,但错误的提交到了 master 在 master 下创建一个新分支,不切换到新分支...git fetch -p # 我不小心删除了我的分支 如果你定期推送到远程,多数情况下应该是安全的,但有些时候还是可能删除了还没有推到远程的分支。...my-branch # 我只想组合 (combine) 未推的提交 (unpushed commit) 有时候,在将数据推向上游之前,你有几个正在进行的工作提交 (commit)。
在临时分支上修复,修复完成后再合并到主分支,不耽误新功能开发; 多人协作时,每个人都在自己的分支上工作,最后通过合并分支整合成果,避免代码冲突。...1.3 分支的关键概念:HEAD 指针 在 Git 中,有一个特殊的 “指针” 叫HEAD,它始终指向当前正在工作的分支。...我们可以通过查看.git/HEAD文件来验证这一点: # 查看HEAD指针指向 cat .git/HEAD 输出结果(当前在master分支): ref: refs/heads/master...而refs/heads/master文件中存储的是master分支最新的提交 ID,Git 通过这个 ID 找到对应的版本。...git commit -m "hotfix: 修复线上登录验证失败的Bug" (3)合并到 master 分支并打标签: # 切换到master分支 git checkout master # 合并
log --pretty=oneline 显示简短信息 首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交,上一个版本就是HEAD^,上上一个版本就是HEAD^...3、就可以把本地库的所有内容推送到远程库上: $ git push -u origin master 把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。...的最后一行,并在master分支上add和commit 现在master分支和feature1分支各自都分别有新的提交 此时在master分支上合并feature1会出现冲突 $ git merge feature1...干活都在dev分支上,也就是说,dev分支是不稳定的,到某个时候,比如1.0版本发布时,再把dev分支合并到master上,在master分支发布1.0版本; 你和你的小伙伴们每个人都在dev分支上干活...首先确定要在哪个分支上修复bug,假定需要在master分支上修复,就从master创建临时分支: $ git checkout master $ git checkout -b issue-101