# Functions to temporarily move global .gitconfig file if it exists
library("withr")
# Temporarily move global ~/.gitconfig file ------------------------------------
# withr "set" function
#
# Moves .gitconfig to .gitconfig-suffix
remove_gitconfig <- function(suffix) {
user_home <- workflowr:::get_home()
config_original <- file.path(user_home, ".gitconfig")
config_tmp <- paste0(config_original, suffix)
if (fs::file_exists(config_original)) {
file.rename(from = config_original, to = config_tmp)
}
return(config_tmp)
}
# withr "reset" function
#
# Moves .gitconfig-suffix to .gitconfig, or deletes .gitconfig if it hadn't
# existed prior
restore_gitconfig <- function(config_tmp) {
user_home <- workflowr:::get_home()
config_original <- file.path(user_home, ".gitconfig")
if (fs::file_exists(config_tmp)) {
file.rename(from = config_tmp, to = config_original)
} else if (fs::file_exists(config_original)) {
# If no temporary backup was created, remove the .gitconfig just created
fs::file_delete(config_original)
}
}
local_no_gitconfig <- withr::local_(set = remove_gitconfig,
reset = restore_gitconfig)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.