我最近开始使用GIT来开始我的Terraform之旅。我可以设置我的本地存储库和远程存储。一切都会好起来吗?但是,我重命名了本地存储库中的一个文件,并执行了提交。然后将其推送到GITHUB中的远程repo。 重命名后的文件仍然与新文件一起出现在我的Github (远程)存储库中。 我的命令副本: xxxxxx MINGW64 /c/Data/Project/Terraform/Terraform (master)
$ git status
On branch master
Your branch is ahead of 'origin/master' by 1 c
我想用git提交一个文件给master,我点击了这个链接:
现在,当我推送我的更改时,会得到错误。我怎么才能修复它?
$ git checkout master
M project/Build.scala
M project/plugins.sbt
A XX/src/main/resources/a.properties
M XX/src/main/resources/project.conf
D XX/src/main/scala/X.scala
M XX/src/test/scala/Y.scala
Switched
git mv file1 file2
git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# renamed: file1 -> file2
git stash
git stash pop
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to
我正在尝试更改我的github提交中的作者姓名/电子邮件。我在谷歌的某个地方找到了这个脚本。
git filter-branch --env-filter 'GIT_AUTHOR_NAME="pubmem";GIT_AUTHOR_EMAIL="pubmem@something.net";GIT_COMMITTER_NAME="pubmem";GIT_COMMITTER_EMAIL="pubmem@something.net";' HEAD
这会给我一个错误Cannot rewrite branches: You h
在我的计算机上(从github),我有一个fork存储库的本地签出。因此,我在github上创建了一个fork,并对其进行了检查。
现在,我希望本地签出与原始github存储库(我从中创建fork的存储库)相同。我将该原始存储库添加到我的本地存储库(名称为'orig'),并执行以下操作:
git pull orig master
但是,git status向我展示了
On branch master
Your branch is ahead of 'origin/master' by 1 commit.
(use "git push" to
我希望能够运行一个命令来丢弃对一个特定文件的更改,不管它是未跟踪的还是修改的。
现在我运行git status,它给了我这样的东西:
$ git st
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
mo
我在我的中转区增加了一堆文件。现在,我意识到我想提交其中的一些文件,但不想提交其他文件(实际上,我想把剩下的文件藏起来)。我如何打开一些文件,但将它们放在工作区域,这样我就可以使用它们来完成其他事情(比如存储)。为了便于讨论,假设我有这个git status
# On branch develop
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# new file: app/scripts/vendor/ember-1.0.0-rc.5.js
#
我们正在使用git进行版本控制,现在我们在尝试上传最新版本时收到了很多警告。我是git的新手,对这些限制没有耐心,有没有办法删除所有内容并上传到当前版本?
这是我现在尝试上传时得到的。
$ git push origin master
Username for 'https://code.google.com':
Password for 'https://<removed>@code.google.com':
To https://code.google.com/p/<removed>/
! [rejected] mas
我这里有一件有趣的事情。我已经开发了一段时间(在Windows上开发,文件被移动到Linux VM上,提交是从VM进行的),并且已经创建了许多新文件。当我运行git status时,它会在new file:部分和modified:部分中显示我的所有新文件。
下面是git status的结果
# On branch 2.x-merge
# Your branch is ahead of 'composer/2.x-merge' by 1 commit.
#
# Changes to be committed:
# (use "git reset HEAD <fi
我经常遇到这样的情况:我提交了一组文件,但随后不得不对这些文件进行修改,因此最终在Changed but not updated中对这些文件进行了修改。
有没有一个单独的行可以让我只对存在于Changed but not updated和Changes to be committed列表中的文件执行git add?
markdsievers$git status
# On branch master
#
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# m
当我使用git status时,它显示:
# 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: "project/Resources/font-365\345\211\257\346\234\254.
我知道Git会跟踪我对应用程序所做的更改,并且它会一直保留这些更改,直到我提交这些更改,但这是我的问题所在:
当我想要恢复到以前的提交时,我使用:
git reset --hard HEAD
然后Git返回:
HEAD is now at 820f417 micro
然后,如何将硬盘上的文件恢复到上次提交的状态?
我的下一步是:
git add .
git commit -m "revert"
但我硬盘上的文件都没变...
我做对了什么/做错了什么?
在mercurial中,我习惯于使用hg up 00来完全清理工作目录。
这会在执行hg init后立即将工作目录重置为其状态。
在git中有没有类似的东西
请注意,hg up 00不同于hg up 0,后者更新为提交的第一个修订,相反,它等同于hg up null,只是键入的字符缩短了几个字符。*8')
还请注意,我不想只在git工作目录的根目录下执行rm -rf *,因为这样git status会显示所有文件都已被删除。我只想在第一次提交之前将存储库更新到它的状态。遗憾的是,我在网上和git手册上的搜索都没有给我提供我需要的信息,让我知道如何在git中做到这一点。
作为后台,我希望
我运行了"git status“,下面列出了一些修改过的文件,或者列在标题"changes not staged for commit”下。它还列出了一些我想忽略的未跟踪文件(我在这些目录中有一个".gitignore“文件)。
我希望将修改后的文件放入暂存状态,以便可以提交它们。当我运行"git add.“时,它会将修改过的文件和我想要忽略的文件添加到staging。
如果出现下面的git状态,如何仅添加已修改的文件并忽略未跟踪的文件。
另外,我的".gitignore“文件是否正常工作?
$ git status
# On branch addLoc
我想知道我的make文件是不是出了什么问题?请在此处查看文件。我只想看到源文件,例如。*.c *.h *.cpp *.hpp。是否有必要首先初始化GIt (Git init)目录,然后创建忽略文件,然后克隆存储库?如你所见,我几乎什么都试过了。
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# ex