这感觉就像我错过了一些明显的东西,但我已经阅读了3天的教程,似乎无法实现它.
我在github上有一个私人回购.我想把它作为两个独立的分支运行.据我了解,我克隆了repo,所以它在我的本地机器上,然后使用它进行分支
git branch newbranch
git checkout newbranch
到现在为止还挺好.现在我做了一些改变,承诺给newbranch.好像我可以将这一切都完整地推送到我的远程仓库,但是我很难做到这一点,而不是简单地将它与主人合并,这不是我想做的事情.如何将我的分支放在github上完好无损?
这是正确的工作流程吗?如果是的话,我做错了什么?
我一直在windows-msysgit上使用git.每当我尝试使用资源管理器或使用时完全删除存储库
$ git rm -rf ptp/
fatal: Not a git repository (or any of the parent directories): .git
Run Code Online (Sandbox Code Playgroud)
它出错"重新分析点缓冲区中存在的数据无效"或上面的致命错误.
我/ git有什么问题?
提前致谢
假设我已经从c:\中完成了以下操作,从远程来源获取最新代码的正确方法是什么?
# Create repo...
mkdir Test
cd Test
git init
...create files
git add .
git commit -a -m "Init Commit"
# Clone repo...
cd ..
git clone Test TestClone
# Edit original
cd Test
...edit files
git commit -a -m "Init Edit"
# Go back to Clone
cd ..\TestClone
# Get latest code
# Now what??? pull or update then pull
Run Code Online (Sandbox Code Playgroud) 我已经为一个小团队使用gitolite建立了一个git服务器.我们中的一个人创建了一个repo并使用智能http推送了初始提交 - 让我们说它驻留在
http://ourhost/project.git
Run Code Online (Sandbox Code Playgroud)
然后我继续使用ssh克隆项目
git clone git@ourhost:project.git
Run Code Online (Sandbox Code Playgroud)
Git让我这样做并创建了项目文件夹,但报告说repo是空的.此外,我做的任何git pull都给了我" 找不到远程ref master "的错误.当我跑了
git remote -v show origin
Run Code Online (Sandbox Code Playgroud)
它显示了HEAD分支:(未知).当我检查服务器(运行gitlab)时,我可以看到主分支和所有代码,所以它显然在那里.
最后我使用智能http和lo克隆它,看到它一切正常,我可以继续使用它.
但为什么会这样呢?为什么我们每个人使用哪种方法推/拉都很重要?Gitlab甚至将两个URL(对于ssh或smart http)显示为repos的替代品,因此它似乎可以工作......)
或者我错过了什么......?
我目前正在开展一个团队项目,有许多远程分支机构.我从主人的分支机构克隆了这个项目.现在,我已经在本地更改了这个项目,我想推送它,但为了避免将其推送到项目主远程分支,我想在本地创建一个新分支,并将此分支推送到远程.
总的想法,不是将我的本地版本的项目粉碎成主要的远程项目.我只需要将我的分支分开.
所以,我猜我会先做
git checkout -b my_new_branch
然后
git push -u origin my_new_branch
这样可以保证,我的分支机构不会与任何人混在一起吗?
我需要第一次将我的更改推送到远程仓库
// I added the other repo as a remote
$ git remote add devstage -f <Other-Repo>
// Merged the files from devstage to my local
$ git merge devstage/master -s recursive -X ours
// Executing Everything up-to-date
$ git push devstage HEAD
Run Code Online (Sandbox Code Playgroud)
但这些文件并未真正推向Other-Repo.
我错过了什么?我当地的所有文件都没有上演.如果我打开一个文件暂存并将其推送到遥控器,它将被推送.
我得到了数十个存储库,如果发生任何差异,新的提交,新的标记,新的分支,我的脚本应该更新它们。在我的情况下,对于数十个存储库而言,访存有点慢,我想知道是否有任何快速命令可以满足我的要求。
我们有两个用于本地git存储库的遥控器。一个称为远程dev,另一个称为origin。当我们运行git status或时git status dev,我们收到以下消息:
# On branch 1.8.x
# Your branch is ahead of 'origin/1.8.x' by 4 commits.
# (use "git push" to publish your local commits)
#
nothing to commit, working directory clean
Run Code Online (Sandbox Code Playgroud)
该消息告诉我们origin遥控器的状态。那不是我们想要的。我们如何只检查dev遥控器的状态?
我正在将我的主分支推送到我的GIT仓库并发生此错误
fatal: 'master' does not appear to be a git repository
Run Code Online (Sandbox Code Playgroud)
根据我输入的堆栈问题的建议
git remote -v
Run Code Online (Sandbox Code Playgroud)
得到了
heroku https://git.heroku.com/peaceful-cove-8372.git (fetch)
heroku https://git.heroku.com/peaceful-cove-8372.git (push)
origin https://github.com/SimonWalsh1000/breathe.git (fetch)
origin https://github.com/SimonWalsh1000/breathe.git (push)
Run Code Online (Sandbox Code Playgroud)
然后我打字
simonalice$ git push -u origin master
Run Code Online (Sandbox Code Playgroud)
它有效,但说
Branch master set up to track remote branch master from origin.
Run Code Online (Sandbox Code Playgroud)
我对GIT很新,我不完全确定发生了什么.如果有人能向我解释这个序列,我将非常感激.我一直无法得到明确的答案.现在是我的主分支,GIT中的主分支还是一些克隆?
非常感谢
我刚刚开始在本地网络上使用Git进行版本控制.为了允许多个用户同步存储库,我还开始使用Bonobo Git Sever软件包.
到目前为止,我总是通过在Bonobo中创建存储库,将其克隆到本地目录,添加文件等,然后根据需要推/拉来初始化存储库.
我们现在说我最初在本地目录中创建存储库,使用它一段时间然后想要将它添加到远程服务器,保持所有提交历史记录不变.
我该怎么做呢?是否与git clone相反 - 即获取现有的本地存储库并将其添加到远程服务器?