有人知道切换和跟踪远程分支这两个命令之间的区别吗?
git checkout -b branch origin/branch
git checkout --track origin/branch
Run Code Online (Sandbox Code Playgroud)
我认为两者都跟踪远程分支,所以我可以将我的更改推送到原点上的分支,对吧?
有什么实际差异吗?
谢谢!
我很确定我在一个流行的Git项目中看到某个地方的分支有一个像"feature/xyz"这样的模式.
但是当我尝试使用斜杠字符创建一个分支时,我收到一个错误:
$ git branch labs/feature
error: unable to resolve reference refs/heads/labs/feature: Not a directory
fatal: Failed to lock ref for update: Not a directory
Run Code Online (Sandbox Code Playgroud)
同样的问题(我最初的尝试):
$ git checkout -b labs/feature
Run Code Online (Sandbox Code Playgroud)
如何使用斜杠字符在Git中创建分支?
所以我在存储库中做了一些工作,当我即将提交时,我意识到我目前不在任何分支上.
在使用子模块时,这种情况发生了很多,我能够解决它,但这个过程很繁琐,而且我一直在想必须有一个更简单的方法来做到这一点.
有没有一种简单的方法可以回到分支上,同时保持变化?
我们有一个网络应用程序,我们几乎每天更新和发布.我们使用git作为我们的VCS,我们当前的分支策略非常简单和破坏:我们有一个主分支,我们检查我们感觉良好的变化.这是有效的,但直到我们检查一个突破性的变化.
有没有人对小型团队有最喜欢的git分支策略,满足以下要求:
理想情况下,我很乐意看到一个开发人员处理新bug的分步过程
来自svn,刚刚开始熟悉git.
当在git中删除分支时,它是否从历史记录中删除了?
在svn中,您可以通过还原删除操作(反向合并)轻松恢复分支.与svn中的所有删除一样,分支永远不会被删除,它只是从当前树中删除.
如果实际上从git中的历史记录中删除了分支,那么从该分支合并的更改会发生什么?他们保留了吗?
如何从另一个分支复制目录中的所有文件?我可以列出该目录中的所有文件
git ls-tree master:dirname
Run Code Online (Sandbox Code Playgroud)
然后,我可以单独复制所有文件
git checkout master -- dirname/filename
Run Code Online (Sandbox Code Playgroud)
但是,到目前为止,使用通配符已经完全失败了.这没有任何作用:
git checkout master -- dirname/*.png
Run Code Online (Sandbox Code Playgroud)
虽然我想我可以使用bash脚本来做到这一点,但必须有一个更简单的方法,对吧?
我通过拉了所有远程分支机构git fetch --all.我可以通过git branch -aremotes/origin/branchname 看到我想要合并的分支.问题是它无法访问.我不能合并或结账?
我已经克隆了一个存储库,之后其他人创建了一个新的分支,我想开始研究它.我阅读了手册,看起来很简单.奇怪的是它不起作用,我发现的所有帖子都表明我做的是正确的.因此,我会让自己受到抨击,因为这一定有明显的错误:
似乎是正确的行动
git fetch
git branch -a
* master
remotes/origin/HEAD --> origin/master
remotes/origin/master
git checkout -b dev-gml origin/dev-gml
Run Code Online (Sandbox Code Playgroud)
此时出现问题,由于某些原因git fetch我无法看到dev-gml远程分支.为什么不?如果我新近克隆存储库,它就在那里,所以远程分支肯定存在:
$ mkdir ../gitest
$ cd ../gitest
$ git clone https://github.com/example/proj.git
Cloning into proj...
remote: Counting objects: 1155, done.
remote: Compressing objects: 100% (383/383), done.
remote: Total 1155 (delta 741), reused 1155 (delta 741)
Receiving objects: 100% (1155/1155), 477.22 KiB | 877 KiB/s, done.
Resolving deltas: 100% (741/741), done.
$ cd projdir
$ git branch -a …Run Code Online (Sandbox Code Playgroud) branch ×10
git ×10
git-branch ×3
git-checkout ×2
copy ×1
fetch ×1
file ×1
git-fetch ×1
master ×1
repository ×1