
问题很简单。我使用源代码树来提交我的更改,但我确实是一个新手,我不想搞乱公共项目。我应该怎么做才能保留我添加的文件而不提交它们,同时将主分支更新到通用版本?
我正在与另一位开发人员合作开发一个Git项目.他意外地犯了一些东西并推了推,但我们不希望它在那里.
我们正试图找到一种方法来将分支硬重置回先前的提交,然后在提交之后销毁历史记录,这就像我们刚刚完成最后一次提交.
我们所能找到的只是'安全'的方法来恢复,但我们实际上想知道是否有一种完全破坏性的方法来删除推送的提交并恢复到之前的提交.
我使用 Sourcetree 版本 2.1.10.0 作为 git gui 工具。
当我转到工具 > 选项 > 身份验证时,我编辑我的帐户,单击“刷新密码”并为我的帐户设置密码。我在“编辑主机帐户”窗口中收到消息“身份验证正常”。
但是,当我选择一个分支并执行“提取”(或任何其他操作)时,我收到以下消息:
fatal: Authentication failed for 'https://mduguay@stash.software.net/app/demoRepo.git/'
Run Code Online (Sandbox Code Playgroud)
现在,当我返回“编辑主机帐户”页面时,我看到消息“登录失败”
我可以重新刷新我的密码并将状态恢复为 Authentication OK,但是当我实际尝试 git 命令时它似乎从未被应用。
为什么我的凭据不能保存?还有其他设置密码的方法吗?
我使用 Atlassian 的 SourceTree 在 Windows 10 上与 git 配合使用,并选择 AWS CodeCommit 作为远程托管服务器。
我按照这个并没有发现问题。
以下是给出的错误
git -c diff.mnemonicprefix=false -c core.quotepath=false fetch origin
fatal: unable to access 'https://git-codecommit.eu-west-2.amazonaws.com/v1/repos/repoName/': The requested URL returned error: 403
Completed with errors, see above.
Run Code Online (Sandbox Code Playgroud) 我下面这个指南有关如何使用Git的LFS。
文章指出,用户需要安装 Git LFS 命令行客户端,或 Git LFS 感知 GUI 客户端,例如 Sourcetree。
尽管看起来很简单,但我找不到有关如何在 SourceTree GUI 中使用 Git LFS 跟踪文件的任何信息,只有命令行指令,如 git lfs track "*.ogg"。是否可以?
我在 SourceTree 中看到下图。我已签出“dev”分支,但我不明白为什么我指向以蓝色突出显示的提交,而不是列表顶部的提交。
该图表明列表顶部的提交已在 dev 分支上提交(尽管我总是发现 SourceTree 图令人困惑,但我不确定这是否真的是图告诉我的)。如果我做:
git checkout dev
git reset --hard head
Run Code Online (Sandbox Code Playgroud)
那么我仍然处于以蓝色突出显示的同一个提交上。我也不清楚为什么主分支显示“origin/HEAD”标记。列表顶部的提交不应该被标记为“origin/HEAD”吗?这是怎么回事?我需要做些什么来解决这个问题吗?
出于安全原因,Bitbucket 对我来说本质上是一种版本控制工具,除了我之外没有人处理这些存储库。我有一个本地项目,存储在本地目录中。该目录被创建为空,然后我从远程存储库(在 bitbucket 上)克隆到名为 A 的本地存储库中。
我在本地工作,并使用 sourcetree 提交/推送。
我需要重命名一个项目,这意味着:
有人有防弹方法吗?
注意:我是 git 用户,这就是为什么我使用 sourcetree,而不是了解所有命令和选项的 git 超级巨星:)
我是 git 新手。
我遵循 git-flow 分支模型,所以我有分支 master 和 develop ,每次我需要一个新功能时,我都会打开一个新的功能分支。
我对功能分支中的几个文件进行了一些更改,并暂存了它们,但尚未提交,因为这些更改尚未经过测试:
$ git status
On branch feature/ParamConfigFaultCollection
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
modified: IOLSE_User_Objs.h
modified: data.c
Run Code Online (Sandbox Code Playgroud)
现在我需要在分支开发上工作,所以我切换到它,我使用 Sourcetree 作为 git GUI 并双击开发:

并且我希望开发人员看不到功能分支上隐藏文件中的更改,但似乎这些更改也存在于开发中:
$ git status
On branch develop
Your branch is up to date with 'origin/develop'.
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
modified: IOLSE_User_Objs.h
modified: data.c
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我有2个分支:master并mybranch
在mybranch基于一个古老的master承诺,我想移动到一个新的master承诺,而融合成master。
层次树目前看起来像这样:
master[commit1]---[commit2]---[commit3]---[commit4]
|
|
mybranch[commit1]---[commit2]
Run Code Online (Sandbox Code Playgroud)
我希望它是这样的:
master[commit1]---[commit2]---[commit3]---[commit4]
| |
| |
mybranch[commit1]---[commit2] mybranch[commit3]---[commit4]
Run Code Online (Sandbox Code Playgroud)
这是 Sourcetree 的截图: