可能重复/更近期/不太清楚的问题
使用Git从先前的提交中分支
我有一个Git分支,jzbranch
并且有一个旧的提交ID : a9c146a09505837ec03b
.
如何justin
根据上面列出的信息创建新分支?
我曾经git checkout -b
创建一个新的分支.我认为这git branch
也是一样的.如果两个命令完全不同,这两个命令有何不同?
我在master分支中做了几次提交,然后将它们合并到dev分支.
我想从dev分支中的特定提交创建一个分支,它首先在master分支中提交.
我使用了命令:
git checkout dev
git branch <branch name> <commit id>
Run Code Online (Sandbox Code Playgroud)
但是,这会从master分支创建分支,而不是我期望的dev分支.master分支和dev分支中的commit id相同.那么,我如何区分不同分支中的相同提交ID?
PS:我在github上做了一个例子https://github.com/RolandXu/test_for_branch
我使用了命令:
git checkout dev
git branch test 07aeec983bfc17c25f0b0a7c1d47da8e35df7af8
Run Code Online (Sandbox Code Playgroud)
我期望的是测试分支包含aa.txt bb.txt cc.txt.但是,测试分支仅包含aa.txt和cc.txt.它很可能是从主分支创建了分支.
我对git和源代码控制很新.
我正在使用vs2012的git视觉工作室工具.
我正在进行一些提交,并希望回到之前的一些提交,但我似乎无法做到这一点.当我转到提交详细信息时,恢复按钮似乎已变灰.
我在最近2个小时内一直坚持这个问题.我研究过互联网但没有用.请有人告诉我如何恢复到之前的提交.
谢谢.
我正在使用以下Git命令来创建一个新的远程分支:
git push origin origin:refs/heads/new_branch_name
Run Code Online (Sandbox Code Playgroud)
我希望新的分支将从旧的提交开始,
我怎样才能做到这一点?(我尝试了一些不同的方法,但失败了)
谢谢.
我团队中的一位开发人员遇到了以下问题.他们有能力拉出一个远程分支,说它是最新的,但他们无法推送到那个远程分支.以下是他们在Windows git命令提示符中获得的内容
MY@MY-PC ~/documents/workspace/my-repository (workflowNewCOBRequest1)
$ git remote show origin workflowNewCOBRequest1
Enter passphrase for key '/c/Users/MY/.ssh/id_rsa':
* remote origin
Fetch URL: git@github.com:myorg/my-repository.git
Push URL: git@github.com:myorg/my-repository.git
HEAD branch: master
Remote branches:
2_Initial_COB_Submission tracked
COB_VF_email_template new (next fetch will store in remotes/origin)
Team-approval tracked
develop tracked
master tracked
testing tracked
workflowNewCOBRequest1 tracked
Local branches configured for 'git pull':
develop merges with remote develop
master merges with remote master
workflowNewCOBRequest1 merges with remote workflowNewCOBRequest1
Local refs configured for 'git push':
Team-approval pushes to …
Run Code Online (Sandbox Code Playgroud)