Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
How effectively delete a git submodule.

To remove a submodule you need to:

  • Delete the relevant section from the .gitmodules file.
  • Stage the .gitmodules changes git add .gitmodules
  • Delete the relevant section from .git/config.
  • Run git rm --cached path_to_submodule (no trailing slash).
  • Run rm -rf .git/modules/path_to_submodule (no trailing slash).
  • Commit git commit -m "Removed submodule "
  • Delete the now untracked submodule files rm -rf path_to_submodule
@giggio

This comment has been minimized.

Copy link

@giggio giggio commented Jul 12, 2018

Works perfectly! Thanks!

@anril

This comment has been minimized.

Copy link

@anril anril commented Jul 17, 2018

Nice

@shahha

This comment has been minimized.

Copy link

@shahha shahha commented Jul 18, 2018

I think above can be simplified using following commands.
git submodule deinit <path_to_submodule>
git rm <path_to_submodule>
git commit-m "Removed submodule "
rm -rf .git/modules/<path_to_submodule>

@schef

This comment has been minimized.

Copy link

@schef schef commented Jul 19, 2018

Thanks.

@migueloop

This comment has been minimized.

Copy link

@migueloop migueloop commented Jul 23, 2018

Thanks!

@hhendrikk

This comment has been minimized.

Copy link

@hhendrikk hhendrikk commented Jul 24, 2018

Thanks!

@manasb-uoe

This comment has been minimized.

Copy link

@manasb-uoe manasb-uoe commented Jul 24, 2018

Thanks!

@KuroNoDev

This comment has been minimized.

Copy link

@KuroNoDev KuroNoDev commented Jul 26, 2018

Thanks!

@jimbojd72

This comment has been minimized.

Copy link

@jimbojd72 jimbojd72 commented Jul 26, 2018

Refer to that 3 times today. Thanks

@codex-corp

This comment has been minimized.

@robin-rpr

This comment has been minimized.

Copy link

@robin-rpr robin-rpr commented Aug 5, 2018

Thanks!

@ayham-hassan

This comment has been minimized.

Copy link

@ayham-hassan ayham-hassan commented Aug 6, 2018

Thanks!

@usmanhafeez147

This comment has been minimized.

Copy link

@usmanhafeez147 usmanhafeez147 commented Aug 11, 2018

thanks!

@lolgear

This comment has been minimized.

Copy link

@lolgear lolgear commented Aug 12, 2018

And GitHub still hasn't upvote button :)

@dustycodes

This comment has been minimized.

Copy link

@dustycodes dustycodes commented Aug 13, 2018

Perfect! Thank you!

@HenrySu

This comment has been minimized.

Copy link

@HenrySu HenrySu commented Aug 15, 2018

Great

@dearaujoj

This comment has been minimized.

Copy link

@dearaujoj dearaujoj commented Aug 16, 2018

Super :-)

@IdoZilberberg

This comment has been minimized.

Copy link

@IdoZilberberg IdoZilberberg commented Aug 19, 2018

Works fine, thanks!

@Coeur

This comment has been minimized.

Copy link

@Coeur Coeur commented Aug 20, 2018

This is a non-credited copy of https://stackoverflow.com/a/1260982/1033581. This gist is in violation of licence cc by-sa 3.0 with attribution required.

@RAStacy

This comment has been minimized.

Copy link

@RAStacy RAStacy commented Aug 21, 2018

This has saved me so many times. Thanks!

@KimAndGumi

This comment has been minimized.

Copy link

@KimAndGumi KimAndGumi commented Aug 29, 2018

Thanks

@tchakabam

This comment has been minimized.

Copy link

@tchakabam tchakabam commented Aug 29, 2018

in modern git versions you can just git rm <path-to-submodule. it does all the dirty work for you. you can add the -f option in case there are new commits lingering or other unstaged or untracked things.

@maciej-gurban

This comment has been minimized.

Copy link

@maciej-gurban maciej-gurban commented Sep 3, 2018

@tchakabam How new are we talking? I tried with 2.15.0 and git rm didn't remove it from .git/config but did remove it from .gitmodules and removed the submodule itself

@maciej-gurban

This comment has been minimized.

Copy link

@maciej-gurban maciej-gurban commented Sep 3, 2018

This seems to be a more modern version (copied from https://stackoverflow.com/a/36593218/2066118):

# Remove the submodule entry from .git/config
git submodule deinit -f path/to/submodule

# Remove the submodule directory from the superproject's .git/modules directory
rm -rf .git/modules/path/to/submodule

# Remove the entry in .gitmodules and remove the submodule directory located at path/to/submodule
git rm -f path/to/submodule
@muhammedbaderdien

This comment has been minimized.

Copy link

@muhammedbaderdien muhammedbaderdien commented Sep 12, 2018

Thanks a lot

@holgerbrandl

This comment has been minimized.

Copy link

@holgerbrandl holgerbrandl commented Sep 23, 2018

awesome thanks!

@ccampanale

This comment has been minimized.

Copy link

@ccampanale ccampanale commented Sep 24, 2018

👍 good stuff!

@sunt05

This comment has been minimized.

Copy link

@sunt05 sunt05 commented Oct 3, 2018

This seems to be a more modern version (copied from https://stackoverflow.com/a/36593218/2066118):

# Remove the submodule entry from .git/config
git submodule deinit -f path/to/submodule

# Remove the submodule directory from the superproject's .git/modules directory
rm -rf .git/modules/path/to/submodule

# Remove the entry in .gitmodules and remove the submodule directory located at path/to/submodule
git rm -f path/to/submodule

It seems this one should be somehow voted-up.

Thanks a lot!

@abduakhatov

This comment has been minimized.

Copy link

@abduakhatov abduakhatov commented Oct 4, 2018

magic

@Muirrum

This comment has been minimized.

Copy link

@Muirrum Muirrum commented Oct 8, 2018

Thank you so much!

@sfoley-gpqa

This comment has been minimized.

Copy link

@sfoley-gpqa sfoley-gpqa commented Oct 18, 2018

Worked perfectly. Thank you very much

@Turim

This comment has been minimized.

Copy link

@Turim Turim commented Oct 26, 2018

This seems to be a more modern version (copied from https://stackoverflow.com/a/36593218/2066118):

# Remove the submodule entry from .git/config
git submodule deinit -f path/to/submodule

# Remove the submodule directory from the superproject's .git/modules directory
rm -rf .git/modules/path/to/submodule

# Remove the entry in .gitmodules and remove the submodule directory located at path/to/submodule
git rm -f path/to/submodule

For my cause it turned out that 2nd line must be
rm -rf .git/modules/submodule_name

For instance , if path/to/submodule literally ./p/t/s then .git/modules could not contain the same hierarchy (depending on whether it was or wasn't specified the name option due to submodule add)

@JonathanMATechServices

This comment has been minimized.

Copy link

@JonathanMATechServices JonathanMATechServices commented Oct 30, 2018

Shouldn't I delete the .git file in the submodule's folder? Assuming I want to keep the submodule's files?

@gupta-alok

This comment has been minimized.

Copy link

@gupta-alok gupta-alok commented Nov 1, 2018

Nice link to follow for deleting the files gracefully from index and then re-add it as submodule.
https://stackoverflow.com/questions/12898278/issue-with-adding-common-code-as-git-submodule-already-exists-in-the-index

@the-nose-knows

This comment has been minimized.

Copy link

@the-nose-knows the-nose-knows commented Dec 18, 2018

Thanks for the updated steps @shahha. Your steps worked like a charm compared to the original steps.

@kriansa

This comment has been minimized.

Copy link

@kriansa kriansa commented Dec 30, 2018

I find this one faster (and easily scriptable):

submodule="folder/submodule"

git rm "$submodule"
rm -rf ".git/modules/$submodule"
git config -f ".git/config" --remove-section "submodule.$submodule" 2> /dev/null

# Commit the change
git commit -m "Remove submodule $submodule"

Credit: https://stackoverflow.com/a/21211232

@mcandre

This comment has been minimized.

Copy link

@mcandre mcandre commented Dec 31, 2018

Thank you for posting!

WHY is this is not a single, built-in command in git itself??

@ice7mayu

This comment has been minimized.

Copy link

@ice7mayu ice7mayu commented Jan 4, 2019

I think above can be simplified using following commands.
git submodule deinit <path_to_submodule>
git rm <path_to_submodule>
git commit-m "Removed submodule "
rm -rf .git/modules/<path_to_submodule>

works like a charm , thanks

@opyate

This comment has been minimized.

Copy link

@opyate opyate commented Jan 25, 2019

@mdaizovi

This comment has been minimized.

Copy link

@mdaizovi mdaizovi commented Jan 28, 2019

Thank you!

@xshirade

This comment has been minimized.

Copy link

@xshirade xshirade commented Jan 31, 2019

Thank you.

@sarkarchandan

This comment has been minimized.

Copy link

@sarkarchandan sarkarchandan commented Feb 5, 2019

Thanks for detailed steps. Works cleanly.

@moyaldror

This comment has been minimized.

Copy link

@moyaldror moyaldror commented Feb 14, 2019

thanks!
created a gist with bash script for this - https://gist.github.com/moyaldror/63b4c2b601592aa3ae8a317adec00a1c

@ardalahmet

This comment has been minimized.

Copy link

@ardalahmet ardalahmet commented Feb 15, 2019

Thanks!

@SteeleDynamics

This comment has been minimized.

Copy link

@SteeleDynamics SteeleDynamics commented Mar 12, 2019

Thanks!

@rayway30419

This comment has been minimized.

Copy link

@rayway30419 rayway30419 commented Mar 21, 2019

Thanks!!!!!

@kneerunjun

This comment has been minimized.

Copy link

@kneerunjun kneerunjun commented Mar 23, 2019

Thats the cleanest way to dump a submodule, Accept my humble upvote sir!

@M4N0V3Y

This comment has been minimized.

Copy link

@M4N0V3Y M4N0V3Y commented Mar 25, 2019

Great!

@Nobadeer

This comment has been minimized.

Copy link

@Nobadeer Nobadeer commented Mar 28, 2019

I think above can be simplified using following commands.
git submodule deinit <path_to_submodule>
git rm <path_to_submodule>
git commit-m "Removed submodule "
rm -rf .git/modules/<path_to_submodule>

This worked perfectly. Thanks.

@obeninteractive

This comment has been minimized.

Copy link

@obeninteractive obeninteractive commented May 5, 2019

thanks !

@vigntom

This comment has been minimized.

Copy link

@vigntom vigntom commented May 8, 2019

Thanks !

@ducklin5

This comment has been minimized.

Copy link

@ducklin5 ducklin5 commented May 11, 2019

Thanks!

@DevEddy

This comment has been minimized.

Copy link

@DevEddy DevEddy commented May 29, 2019

Thanks

@lemasyma

This comment has been minimized.

Copy link

@lemasyma lemasyma commented May 31, 2019

Works perfectly! Thank you

@monocasual

This comment has been minimized.

Copy link

@monocasual monocasual commented Jun 7, 2019

<3

@fedorenchik

This comment has been minimized.

Copy link

@fedorenchik fedorenchik commented Jun 11, 2019

<3

@esteban-gs

This comment has been minimized.

Copy link

@esteban-gs esteban-gs commented Jun 14, 2019

thanks!

@Geylnu

This comment has been minimized.

Copy link

@Geylnu Geylnu commented Jul 3, 2019

thanks!

@leviv

This comment has been minimized.

Copy link

@leviv leviv commented Jul 7, 2019

Thank you!!

@harshsinghal

This comment has been minimized.

Copy link

@harshsinghal harshsinghal commented Jul 7, 2019

Very helpful! Thanks for sharing.

@erkanzileli

This comment has been minimized.

Copy link

@erkanzileli erkanzileli commented Jul 8, 2019

Works nice. Thanks.

@azemtsov

This comment has been minimized.

Copy link

@azemtsov azemtsov commented Jul 11, 2019

Saved my day

@AndrewOfC

This comment has been minimized.

Copy link

@AndrewOfC AndrewOfC commented Jul 15, 2019

Thank you very much for working out the nuts&bolts of how to cleanly remove a submodule and posting it for us. However, to my mind, it just gives me another reason to hate submodules. 😠

@fperezgamonal

This comment has been minimized.

Copy link

@fperezgamonal fperezgamonal commented Jul 17, 2019

Thank you so much! 👐 I was stuck not understanding why I could not remove "just" by using rm -rf --cached path_to_submodule and it was because I had not purged the configuration files.

@LX314

This comment has been minimized.

Copy link

@LX314 LX314 commented Jul 24, 2019

I think above can be simplified using following commands.
git submodule deinit <path_to_submodule>
git rm <path_to_submodule>
git commit-m "Removed submodule "
rm -rf .git/modules/<path_to_submodule>

works like a charm , thanks

nice one

@LX314

This comment has been minimized.

Copy link

@LX314 LX314 commented Aug 1, 2019

this is my version

git rm --cached <path_to_submodule> rm -rf <path_to_submodule> git commit -m "Removed <path_to_submodule> submodule " rm -rf .git/modules/<path_to_submodule> git config -f .gitmodules --remove-section submodule.<path_to_submodule> git config -f .git/config --remove-section submodule.<path_to_submodule>

@LX314

This comment has been minimized.

Copy link

@LX314 LX314 commented Aug 1, 2019

git rm --cached <path_to_submodule>
rm -rf <path_to_submodule>
git commit -m "Removed <path_to_submodule> submodule "
rm -rf .git/modules/<path_to_submodule>
git config -f .gitmodules --remove-section submodule.<path_to_submodule>
git config -f .git/config --remove-section submodule.<path_to_submodule>
@moeabdol

This comment has been minimized.

Copy link

@moeabdol moeabdol commented Aug 9, 2019

Excellent!
Thanks.

@franckXu

This comment has been minimized.

Copy link

@franckXu franckXu commented Sep 19, 2019

thanks

@okovalov

This comment has been minimized.

Copy link

@okovalov okovalov commented Oct 10, 2019

thank you!

@cgunnels

This comment has been minimized.

Copy link

@cgunnels cgunnels commented Oct 18, 2019

This should be on stackoverflow so I can upvote your answer...thanks!

@puremourning

This comment has been minimized.

Copy link

@puremourning puremourning commented Oct 19, 2019

From git help submodules:


       o   Deleted submodule: A submodule can be deleted by running git rm <submodule path> && git commit. This can
           be undone using git revert.

           The deletion removes the superproject's tracking data, which are both the gitlink entry and the section
           in the .gitmodules file. The submodule's working directory is removed from the file system, but the Git
           directory is kept around as it to make it possible to checkout past commits without requiring fetching
           from another repository.

           To completely remove a submodule, manually delete $GIT_DIR/modules/<name>/.
@Daniel-Chin

This comment has been minimized.

Copy link

@Daniel-Chin Daniel-Chin commented Nov 9, 2019

Thanks!

@nicenemo

This comment has been minimized.

Copy link

@nicenemo nicenemo commented Nov 11, 2019

Thanks!

@raystudio9236

This comment has been minimized.

Copy link

@raystudio9236 raystudio9236 commented Nov 22, 2019

Thanks!

@aitbaali

This comment has been minimized.

Copy link

@aitbaali aitbaali commented Nov 22, 2019

very helpful

@jmegevand

This comment has been minimized.

Copy link

@jmegevand jmegevand commented Nov 25, 2019

Thanks !!

@Paxa

This comment has been minimized.

Copy link

@Paxa Paxa commented Nov 26, 2019

Thanks 👍

@levmichael3

This comment has been minimized.

Copy link

@levmichael3 levmichael3 commented Nov 27, 2019

Thanks!! works like a charm! 😸

@meoww-bot

This comment has been minimized.

Copy link

@meoww-bot meoww-bot commented Jan 17, 2020

I think above can be simplified using following commands.
git submodule deinit <path_to_submodule>
git rm <path_to_submodule>
git commit-m "Removed submodule "
rm -rf .git/modules/<path_to_submodule>

thanks!

@JimmyPesto

This comment has been minimized.

Copy link

@JimmyPesto JimmyPesto commented Jan 22, 2020

I find this one faster (and easily scriptable):

submodule="folder/submodule"

git rm "$submodule"
rm -rf ".git/modules/$submodule"
git config -f ".git/config" --remove-section "submodule.$submodule" 2> /dev/null

# Commit the change
git commit -m "Remove submodule $submodule"

Credit: https://stackoverflow.com/a/21211232

Great idea to script it!
Worked like a charm.

@ForeverZer0

This comment has been minimized.

Copy link

@ForeverZer0 ForeverZer0 commented Feb 16, 2020

@JimmyPesto Thanks for the tip, made a bash function out it. 👍

@JimmyPesto

This comment has been minimized.

Copy link

@JimmyPesto JimmyPesto commented Feb 16, 2020

@ForeverZer0 Maybe you could share your solution in an public repo?

@ForeverZer0

This comment has been minimized.

Copy link

@ForeverZer0 ForeverZer0 commented Feb 17, 2020

@JimmyPesto Good idea, I whipped up a quick markdown tutorial here.

@ingorichter

This comment has been minimized.

Copy link

@ingorichter ingorichter commented Feb 20, 2020

Or you could install https://github.com/tj/git-extras and use git delete-submodule

@chenwaichung

This comment has been minimized.

Copy link

@chenwaichung chenwaichung commented Mar 2, 2020

Thanks for your share.

@rjodon

This comment has been minimized.

Copy link

@rjodon rjodon commented Mar 5, 2020

Thanks

@deepakreddy63

This comment has been minimized.

Copy link

@deepakreddy63 deepakreddy63 commented Mar 12, 2020

Thanks !!

@ntdat017

This comment has been minimized.

Copy link

@ntdat017 ntdat017 commented Mar 20, 2020

works as a charm!!

@deepcharles

This comment has been minimized.

Copy link

@deepcharles deepcharles commented Mar 20, 2020

Still working!

@lucas123ho

This comment has been minimized.

Copy link

@lucas123ho lucas123ho commented Mar 26, 2020

Thanks!!

@KentonPrescott

This comment has been minimized.

Copy link

@KentonPrescott KentonPrescott commented Mar 27, 2020

Wonderful

@jiafangtao

This comment has been minimized.

Copy link

@jiafangtao jiafangtao commented Apr 2, 2020

Perfect

@CarefreeSlacker

This comment has been minimized.

Copy link

@CarefreeSlacker CarefreeSlacker commented Apr 3, 2020

Thanks! Works well)

@vittorius

This comment has been minimized.

Copy link

@vittorius vittorius commented Apr 3, 2020

Thanks!

@juliusbaxter

This comment has been minimized.

Copy link

@juliusbaxter juliusbaxter commented Apr 14, 2020

Useful, cheers!

@Edison4mobile

This comment has been minimized.

Copy link

@Edison4mobile Edison4mobile commented Apr 24, 2020

Perfect thanks.

@honzik20

This comment has been minimized.

Copy link

@honzik20 honzik20 commented May 1, 2020

THANK YOU!

@oaugusto256

This comment has been minimized.

Copy link

@oaugusto256 oaugusto256 commented May 12, 2020

Thanks!

@emveeoh

This comment has been minimized.

Copy link

@emveeoh emveeoh commented May 18, 2020

thank. you.

@Mrcooder

This comment has been minimized.

Copy link

@Mrcooder Mrcooder commented May 28, 2020

I think above can be simplified using following commands.
git submodule deinit <path_to_submodule>
git rm <path_to_submodule>
git commit-m "Removed submodule "
rm -rf .git/modules/<path_to_submodule>

Thank you bro. U did great thing!

@k0a8t1o6

This comment has been minimized.

Copy link

@k0a8t1o6 k0a8t1o6 commented Jun 6, 2020

Thank you, this was the great tip!

@najuzilu

This comment has been minimized.

Copy link

@najuzilu najuzilu commented Jun 16, 2020

Thanks!

@caio-vinicius

This comment has been minimized.

Copy link

@caio-vinicius caio-vinicius commented Jun 16, 2020

I think above can be simplified using following commands.
git submodule deinit <path_to_submodule>
git rm <path_to_submodule>
git commit-m "Removed submodule "
rm -rf .git/modules/<path_to_submodule>

it works great, thank you

@spikegee

This comment has been minimized.

Copy link

@spikegee spikegee commented Jun 17, 2020

Thanks

@smac89

This comment has been minimized.

Copy link

@smac89 smac89 commented Jul 13, 2020

@codex-corp

source https://forum.freecodecamp.org/t/how-to-remove-a-submodule-in-git/13228

No. That answer was written on August 2016, and this gist in 2014...

@Carlos-Augusto

This comment has been minimized.

Copy link

@Carlos-Augusto Carlos-Augusto commented Jul 17, 2020

I think above can be simplified using following commands.
git submodule deinit <path_to_submodule>
git rm <path_to_submodule>
git commit-m "Removed submodule "
rm -rf .git/modules/<path_to_submodule>

Works, thanks

@jasperf

This comment has been minimized.

Copy link

@jasperf jasperf commented Jul 29, 2020

What was mentioned here earlier did work despite an error

git submodule deinit l8-docker 
Cleared directory 'l8-docker'
error: could not lock config file .git/modules/l8-docker/config: No such file or directory
warning: Could not unset core.worktree setting in submodule 'l8-docker'
➜  smt-demo git:(master) git rm l8-docker 
rm 'l8-docker'
@Sailor-Saturn

This comment has been minimized.

Copy link

@Sailor-Saturn Sailor-Saturn commented Aug 23, 2020

Worked, thank you so much!! 😀

@melnarte

This comment has been minimized.

Copy link

@melnarte melnarte commented Aug 26, 2020

Thank you !

@stephanmg

This comment has been minimized.

@tall-josh

This comment has been minimized.

Copy link

@tall-josh tall-josh commented Sep 9, 2020

Helping devs since 2018! Thanks!

@zhangk1551

This comment has been minimized.

Copy link

@zhangk1551 zhangk1551 commented Sep 12, 2020

From git help submodules:


       o   Deleted submodule: A submodule can be deleted by running git rm <submodule path> && git commit. This can
           be undone using git revert.

           The deletion removes the superproject's tracking data, which are both the gitlink entry and the section
           in the .gitmodules file. The submodule's working directory is removed from the file system, but the Git
           directory is kept around as it to make it possible to checkout past commits without requiring fetching
           from another repository.

           To completely remove a submodule, manually delete $GIT_DIR/modules/<name>/.

I've follow this instruction and run these commands:
git rm <submodule path> && git commit
rm -rf $GIT_DIR/modules/<name>/

But this doesn't remove sections in .git/config
If you want to keep your .git/config clean, you need to run git config --remove-section, too.

If you don't care about your local repo and just want to ensure the submodules are removed from the remote repo, it seems that git rm <submodule path> && git commit is enough. After that, git clone the remote repo and run git submodule update --init --recursive, you won't be bothered by the $GIT_DIR/modules/<name>/ or the .git/config in the new local repo any more.

@ziyuv

This comment has been minimized.

Copy link

@ziyuv ziyuv commented Sep 14, 2020

Appreciate this! Thank you!

@goyzhang

This comment has been minimized.

Copy link

@goyzhang goyzhang commented Sep 18, 2020

From git help submodules:


       o   Deleted submodule: A submodule can be deleted by running git rm <submodule path> && git commit. This can
           be undone using git revert.

           The deletion removes the superproject's tracking data, which are both the gitlink entry and the section
           in the .gitmodules file. The submodule's working directory is removed from the file system, but the Git
           directory is kept around as it to make it possible to checkout past commits without requiring fetching
           from another repository.

           To completely remove a submodule, manually delete $GIT_DIR/modules/<name>/.

I've follow this instruction and run these commands:
git rm <submodule path> && git commit
rm -rf $GIT_DIR/modules/<name>/

But this doesn't remove sections in .git/config
If you want to keep your .git/config clean, you need to run git config --remove-section, too.

If you don't care about your local repo and just want to ensure the submodules are removed from the remote repo, it seems that git rm <submodule path> && git commit is enough. After that, git clone the remote repo and run git submodule update --init --recursive, you won't be bothered by the $GIT_DIR/modules/<name>/ or the .git/config in the new local repo any more.

Um... This introduces a bug that when you reuse the folder as a submodule (i.e it was a git submodule folder before and now you change it to another submodule with the same folder name). It will conflict when you checkout between these commits and end up with errors unless you manually delete $GIT_DIR/modules//. This is especially painful when it comes to CI environment, where you can't solve it with git command ( you will have to call system rm)

@marissala

This comment has been minimized.

Copy link

@marissala marissala commented Sep 21, 2020

Epic and simple - thank you!

@alnunez

This comment has been minimized.

Copy link

@alnunez alnunez commented Sep 21, 2020

Excellent. Helped a lot!

@afpro

This comment has been minimized.

Copy link

@afpro afpro commented Sep 27, 2020

excellent, like a charm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.