我有一个Git存储库,其中包含许多子目录.现在我发现其中一个子目录与另一个子目录无关,应该分离到一个单独的存储库.
如何在将文件的历史记录保存在子目录中的同时执行此操作?
我想我可以制作一个克隆并删除每个克隆的不需要的部分,但我想这会给我一个完整的树,当检查旧版本等.这可能是可以接受的,但我宁愿能够假装两个存储库没有共享历史记录.
为了说清楚,我有以下结构:
XYZ/
.git/
XY1/
ABC/
XY2/
Run Code Online (Sandbox Code Playgroud)
但我想这样做:
XYZ/
.git/
XY1/
XY2/
ABC/
.git/
ABC/
Run Code Online (Sandbox Code Playgroud) 什么时候建议使用git rebasevs. git merge?
成功改造后我还需要合并吗?
我使用以下命令推送到我的远程分支:
git push origin sandbox
Run Code Online (Sandbox Code Playgroud)
如果我说
git push origin
Run Code Online (Sandbox Code Playgroud)
这会推动我的其他分支的变化,还是只更新我当前的分支?我有三个分支:master,production和sandbox.
该git push文件是不是这个很清楚,所以我想澄清这一点为好.
哪些分支和遥控器可以git push完全更新以下命令?
git push
git push origin
Run Code Online (Sandbox Code Playgroud)
origin 上面是一个遥控器.
据我所知,git push [remote] [branch]只会将该分支推送到远程.
我有一个Git仓库,我已经删除了使用rm(不是 git rm)的四个文件,我的Git状态如下所示:
# deleted: file1.txt
# deleted: file2.txt
# deleted: file3.txt
# deleted: file4.txt
Run Code Online (Sandbox Code Playgroud)
如何从Git中删除这些文件,而无需手动浏览并添加如下所示的每个文件:
git rm file1 file2 file3 file4
Run Code Online (Sandbox Code Playgroud)
理想情况下,我正在寻找能够以同样方式工作的东西git add .,如果可能的话.
是否可以使用git push?部署网站?我有一个预感,它与使用git hooksgit reset --hard在服务器端执行有关,但我将如何实现这一目标呢?
该命令将删除系统中的文件.我的意思是它只从Git-repository中删除文件.
如何在不删除系统中的文件的情况下从Git存储库中删除该文件?
有没有办法使用命令git ls-files,只显示未跟踪的文件?
我问的原因是因为我使用以下命令来处理所有已删除的文件:
git ls-files -d | xargs git rm
Run Code Online (Sandbox Code Playgroud)
对于未跟踪的文件,我想要类似的东西:
git some-command --some-options | xargs git add
Run Code Online (Sandbox Code Playgroud)
我能够找到-o选项git ls-files,但这不是我想要的,因为它也显示了被忽略的文件.我还能够提出以下长而丑陋的命令:
git status --porcelain | grep '^??' | cut -c4- | xargs git add
Run Code Online (Sandbox Code Playgroud)
似乎我必须在这里使用更好的命令.如果没有,我如何创建自定义git命令?
有没有办法添加所有文件,无论你对它们做什么,是否删除,未跟踪等?喜欢提交.我每次提交时都不想拥有git add或git rm所有文件,特别是当我在处理大型产品时.
我删除了一些文件和git状态显示如下.
我承诺并推动.
GitHub仍然在存储库中显示已删除的文件.如何删除GitHub存储库中的文件?
# On branch master
# Changes not staged for commit:
# (use "git add/rm <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# deleted: modules/welcome/language/english/kaimonokago_lang.php
# deleted: modules/welcome/language/french/kaimonokago_lang.php
# deleted: modules/welcome/language/german/kaimonokago_lang.php
# deleted: modules/welcome/language/norwegian/kaimonokago_lang.php
Run Code Online (Sandbox Code Playgroud)
如果我使用git rm它,它给出以下.
usage: git rm [options] [--] <file>...
-n, --dry-run dry run
-q, --quiet do not list removed files
--cached only remove from the index
-f, --force override the …Run Code Online (Sandbox Code Playgroud) git ×10
git-rm ×6
git-add ×2
branch ×1
deployment ×1
git-branch ×1
git-commit ×1
git-ls-files ×1
git-merge ×1
git-push ×1
git-rebase ×1
git-stage ×1
git-status ×1
git-subtree ×1
githooks ×1
gitignore ×1
webserver ×1