I want to add all files no matter what: whether it is deleted, created, modified, untracked, etc? I just don’t want to git add ALL my files EVERY TIME. I tried git add -A but it is NOT adding modified files inside folders.
Here is my initial git status in my project:
Rakib-MacBook-Pro:my-xcode-practice rakib$ git status
# 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)
# (commit or discard the untracked or modified content in submodules)
#
# modified: BankAccount (modified content, untracked content)
# modified: BuckysButtons (modified content, untracked content)
# modified: multiview (modified content, untracked content)
# modified: rotator (modified content, untracked content)
# modified: segmentedControls (modified content, untracked content)
#
no changes added to commit (use "git add" and/or "git commit -a")
Then I put git add -A:
Rakib-MacBook-Pro:my-xcode-practice rakib$ git add -A
and then here is the new status AFTER doing git add -A:
Rakib-MacBook-Pro:my-xcode-practice rakib$ git status
# 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)
# (commit or discard the untracked or modified content in submodules)
#
# modified: BankAccount (modified content, untracked content)
# modified: BuckysButtons (modified content, untracked content)
# modified: multiview (modified content, untracked content)
# modified: rotator (modified content, untracked content)
# modified: segmentedControls (modified content, untracked content)
#
no changes added to commit (use "git add" and/or "git commit -a")
You can see that there has been no change in the git status.
How do I solve this?
I also tried git add . – it did not help
I also tried git add * – it did not help
The problem here is that
BankAccount,BuckysButtons,multiview,rotatorandsegmentedControlsare all git submodules, which act like independent repositories in many ways.If what you want to do is to run
git add -A .in each submodule, you could do:And then you could create a commit in every submodule with:
(If you don’t have other submodules nested inside those submodules, the
--recursiveoption is unnecessary.)However, I don’t recommend doing this. You should carefully change into each submodule in turn, and consider how you want to update them, treating each as a standalone repository. Then only commit these new submodule versions in the main project when you have tested that the project as a whole works with those new versions of each submodule.
Update: It seems from the error message that you’ve quoted in the comments below that you have added these other git repositories directly rather than as submodules. This can happen if you copy another git repository into your repository and then just use
git addto stage it, rather than adding it withgit submodule add <REPOSITORY-URL>. If you really intend these to be stored as submodules, I would suggest moving them out of your repository, committing their deletion, and then add them properly as submodules withgit submodule add