Git Bash의 윈도우즈 설치에서 ~ 디렉토리의 위치 변경
나는 내가 올바른 질문을 하고 있는지조차 확신할 수 없습니다.제 상황을 설명하겠습니다.
Windows 7(윈도우 7)의 Git에 대한 내용입니다.
당사에서는 로컬 하드 드라이브가 아닌 네트워크 드라이브에 Windows 사용자 디렉토리를 설정합니다(이 질문의 범위를 벗어나는 백업 및 기타 목적).저는 그 정책을 변경할 수 없습니다.
로컬 파일을 해당 구성표 밖에 둘 수는 있지만, 이렇게 Apache 서버가 설정됩니다.완전히 지역적인.
Git 설치했습니다.Bash를 설치합니다.내가 바쉬를 불태울 때 그리고cd ~
(루트 디렉토리로 변경) Bash 루트가 네트워크 사용자 디렉토리를 가리킨다는 것을 알게 되었습니다.저는 그것이 그렇게 하지 않기를.나는 되고 싶다.~
내 하드 드라이브의 다른 곳에 있습니다.인증서 설치, SSH 키 등 다른 작업을 수행할 때 기본값이 해당 네트워크 디렉토리를 자동으로 사용하지 않도록 하고 싶습니다.
저는 모든 곳을 찾아봤지만, 제가 찾을 수 있는 것은 가명, 리디렉션, $HOME이 가리키는 위치와 관련된 답변들뿐입니다.하지만 그것은 제가 원하는 것이 전혀 아닙니다.
문제는 이 디렉토리를 변경할 수 있느냐는 것입니다.만약 그렇다면: 어떻게?
업데이트: $HOME은 제가 수정해야 할 사항입니다.하지만 저는 이 신화적인 $HOME 변수가 어디에 설정되어 있는지 찾을 수 없어서 Linux 시스템 버전의 PATH나 뭐 그런 것이라고 추측했습니다.어쨌든...
는 아에 "프로파일있습다니일파이래▁under" 아래에 .git/etc
$HOME 없음입니다.: ($HOME)
# To the extent possible under law, the author(s) have dedicated all
# copyright and related and neighboring rights to this software to the
# public domain worldwide. This software is distributed without any warranty.
# You should have received a copy of the CC0 Public Domain Dedication along
# with this software.
# If not, see <http://creativecommons.org/publicdomain/zero/1.0/>.
# System-wide profile file
# Some resources...
# Customizing Your Shell: http://www.dsl.org/cookbook/cookbook_5.html#SEC69
# Consistent BackSpace and Delete Configuration:
# http://www.ibb.net/~anne/keyboard.html
# The Linux Documentation Project: http://www.tldp.org/
# The Linux Cookbook: http://www.tldp.org/LDP/linuxcookbook/html/
# Greg's Wiki http://mywiki.wooledge.org/
# Setup some default paths. Note that this order will allow user installed
# software to override 'system' software.
# Modifying these default path settings can be done in different ways.
# To learn more about startup files, refer to your shell's man page.
MSYS2_PATH="/usr/local/bin:/usr/bin:/bin"
MANPATH="/usr/local/man:/usr/share/man:/usr/man:/share/man:${MANPATH}"
INFOPATH="/usr/local/info:/usr/share/info:/usr/info:/share/info:${INFOPATH}"
MINGW_MOUNT_POINT=
if [ -n "$MSYSTEM" ]
then
case "$MSYSTEM" in
MINGW32)
MINGW_MOUNT_POINT=/mingw32
PATH="${MINGW_MOUNT_POINT}/bin:${MSYS2_PATH}:${PATH}"
PKG_CONFIG_PATH="${MINGW_MOUNT_POINT}/lib/pkgconfig:${MINGW_MOUNT_POINT}/share/pkgconfig"
ACLOCAL_PATH="${MINGW_MOUNT_POINT}/share/aclocal:/usr/share/aclocal"
MANPATH="${MINGW_MOUNT_POINT}/share/man:${MANPATH}"
;;
MINGW64)
MINGW_MOUNT_POINT=/mingw64
PATH="${MINGW_MOUNT_POINT}/bin:${MSYS2_PATH}:${PATH}"
PKG_CONFIG_PATH="${MINGW_MOUNT_POINT}/lib/pkgconfig:${MINGW_MOUNT_POINT}/share/pkgconfig"
ACLOCAL_PATH="${MINGW_MOUNT_POINT}/share/aclocal:/usr/share/aclocal"
MANPATH="${MINGW_MOUNT_POINT}/share/man:${MANPATH}"
;;
MSYS)
PATH="${MSYS2_PATH}:/opt/bin:${PATH}"
PKG_CONFIG_PATH="/usr/lib/pkgconfig:/usr/share/pkgconfig:/lib/pkgconfig"
;;
*)
PATH="${MSYS2_PATH}:${PATH}"
;;
esac
else
PATH="${MSYS2_PATH}:${PATH}"
fi
MAYBE_FIRST_START=false
SYSCONFDIR="${SYSCONFDIR:=/etc}"
# TMP and TEMP as defined in the Windows environment must be kept
# for windows apps, even if started from msys2. However, leaving
# them set to the default Windows temporary directory or unset
# can have unexpected consequences for msys2 apps, so we define
# our own to match GNU/Linux behaviour.
ORIGINAL_TMP=$TMP
ORIGINAL_TEMP=$TEMP
#unset TMP TEMP
#tmp=$(cygpath -w "$ORIGINAL_TMP" 2> /dev/null)
#temp=$(cygpath -w "$ORIGINAL_TEMP" 2> /dev/null)
#TMP="/tmp"
#TEMP="/tmp"
case "$TMP" in *\\*) TMP="$(cygpath -m "$TMP")";; esac
case "$TEMP" in *\\*) TEMP="$(cygpath -m "$TEMP")";; esac
test -d "$TMPDIR" || test ! -d "$TMP" || {
TMPDIR="$TMP"
export TMPDIR
}
# Define default printer
p='/proc/registry/HKEY_CURRENT_USER/Software/Microsoft/Windows NT/CurrentVersion/Windows/Device'
if [ -e "${p}" ] ; then
read -r PRINTER < "${p}"
PRINTER=${PRINTER%%,*}
fi
unset p
print_flags ()
{
(( $1 & 0x0002 )) && echo -n "binary" || echo -n "text"
(( $1 & 0x0010 )) && echo -n ",exec"
(( $1 & 0x0040 )) && echo -n ",cygexec"
(( $1 & 0x0100 )) && echo -n ",notexec"
}
# Shell dependent settings
profile_d ()
{
local file=
for file in $(export LC_COLLATE=C; echo /etc/profile.d/*.$1); do
[ -e "${file}" ] && . "${file}"
done
if [ -n ${MINGW_MOUNT_POINT} ]; then
for file in $(export LC_COLLATE=C; echo ${MINGW_MOUNT_POINT}/etc/profile.d/*.$1); do
[ -e "${file}" ] && . "${file}"
done
fi
}
for postinst in $(export LC_COLLATE=C; echo /etc/post-install/*.post); do
[ -e "${postinst}" ] && . "${postinst}"
done
if [ ! "x${BASH_VERSION}" = "x" ]; then
HOSTNAME="$(/usr/bin/hostname)"
profile_d sh
[ -f "/etc/bash.bashrc" ] && . "/etc/bash.bashrc"
elif [ ! "x${KSH_VERSION}" = "x" ]; then
typeset -l HOSTNAME="$(/usr/bin/hostname)"
profile_d sh
PS1=$(print '\033]0;${PWD}\n\033[32m${USER}@${HOSTNAME} \033[33m${PWD/${HOME}/~}\033[0m\n$ ')
elif [ ! "x${ZSH_VERSION}" = "x" ]; then
HOSTNAME="$(/usr/bin/hostname)"
profile_d zsh
PS1='(%n@%m)[%h] %~ %% '
elif [ ! "x${POSH_VERSION}" = "x" ]; then
HOSTNAME="$(/usr/bin/hostname)"
PS1="$ "
else
HOSTNAME="$(/usr/bin/hostname)"
profile_d sh
PS1="$ "
fi
if [ -n "$ACLOCAL_PATH" ]
then
export ACLOCAL_PATH
fi
export PATH MANPATH INFOPATH PKG_CONFIG_PATH USER TMP TEMP PRINTER HOSTNAME PS1 SHELL tmp temp
test -n "$TERM" || export TERM=xterm-256color
if [ "$MAYBE_FIRST_START" = "true" ]; then
sh /usr/bin/regen-info.sh
if [ -f "/usr/bin/update-ca-trust" ]
then
sh /usr/bin/update-ca-trust
fi
clear
echo
echo
echo "###################################################################"
echo "# #"
echo "# #"
echo "# C A U T I O N #"
echo "# #"
echo "# This is first start of MSYS2. #"
echo "# You MUST restart shell to apply necessary actions. #"
echo "# #"
echo "# #"
echo "###################################################################"
echo
echo
fi
unset MAYBE_FIRST_START
이해가 안 돼요, 왜 당신이 설정을 안 하려고 하는지.$HOME
환경 변수는 당신이 요구하는 것을 정확하게 해결해주기 때문입니다.
cd ~
루트 디렉터리를 변경하는 것이 아니라 사용자의 홈 디렉터리를 변경하는 것을 의미합니다.$HOME
환경 변수입니다.
신속하고 더러운 해결책
집C:\Program Files (x86)\Git\etc\profile
트세를 합니다.$HOME
원하는 모든 항목에 대한 변수입니다(없는 경우 추가).좋은 장소는 예를 들어 다음과 같은 조건이 언급된 직후일 수 있습니다.# Set up USER's home directory
MinGW 형식이어야 합니다. 예:
HOME=/c/my/custom/home
Git Bash를 합니다.cd ~
./c/my/custom/home
지금이다.
사용자 프로필에 액세스하는 모든 항목은 네트워크 드라이브의 Windows 프로필 대신 이 디렉터리로 이동해야 합니다.
참조: C:\Program Files (x86)\Git\etc\profile
에 여러를 사용하는▁the▁is다▁is좋니습▁set▁to▁it'것▁idea▁good모s▁machine를 설정하는 것이 좋습니다.$HOME
동적:
HOME=/c/Users/$USERNAME
더 깨끗한 솔루션
합니다.HOME
원하는 디렉토리로 이동합니다. 형식.c:\my\custom\home
), 합니다.), Git Bash는 이 형식을 사용합니다.
컴퓨터의 모든 사용자에 대한 홈 디렉토리를 변경하려면 예를 들어 사용할 수 있는 시스템 환경 변수로 설정합니다.%USERNAME%
변수를 사용하여 모든 사용자가 자신의 홈 디렉토리를 가질 수 있습니다. 예:
HOME=c:\custom\home\%USERNAME%
자신만을 위해 홈 디렉토리를 변경하려면 다른 사용자가 영향을 받지 않도록 홈 디렉토리를 사용자 환경 변수로 설정합니다.이 경우 전체 경로를 간단하게 하드 코딩할 수 있습니다.
HOME=c:\my\custom\home
이 경우 Windows에서 다음 사용자 변수를 추가하기만 하면 되었습니다.
이름: 변수이름:HOME
값: 변수 값:%USERPROFILE%
환경 변수 설정 방법(시스템 관리자가 아닌 경우 사용자 이름에 대한 사용자 변수 섹션을 사용할 수 있음)
Git뿐만 아니라 MSYS/MinGW에서도 작동하는 제가 한 일을 공유하겠습니다.
그HOME
환경 변수는 일반적으로 Windows 응용 프로그램에 대해 설정되지 않으므로 Windows를 통해 환경 변수를 생성해도 다른 영향은 없습니다.익스플로러에서 로 클릭하고> 및 -시스템을 합니다).Advanced system settings
,그리고나서Environment Variables...
그리고 새로운 것을 만듭니다.HOME
원하는 곳에 할당할 수 있습니다.
새로운 환경변수를 만들 수 없다면 다른 답은 여전히 유효할 것입니다. (환경변수를 만드는 방법은 찾기가 너무 어렵기 때문에 자세히 살펴보았습니다.
수는대신하정전을 profile
은 수있다니습생할을 수 ..bash_profile
당신이 결석한 경우에는$HOME
디토리예):C:\Users\WhateverUser\.bash_profile
의 내용은과 같습니다.
export HOME="C:\my\projects\dir"
# or export HOME="/c/my/projects/dir"
cd "$HOME" # if you'd like it to be the starting dir of the git shell
1 가기를 오른쪽 버튼으로 하여 Properties1을 합니다. Gitbash 바로 가기를 마우스 오른쪽 버튼으로 클릭하여 속성을 선택합니다.
" 가기"합니다. "바로 가기" 탭을 선택합니다.
3에 합니다. "시작" 필드에 시작 디렉토리를 입력합니다.
" 4에서합니다. "Target" 필드에서 "--cd-to-home" 부품을 제거합니다.
그래서 $HOME을 수정해야 합니다.하지만 저는 이 신화적인 $HOME 변수가 어디에 설정되어 있는지 찾을 수 없어서 Linux 시스템 버전의 PATH나 뭐 그런 것이라고 추측했습니다.어쨌든...**
정답.
HOME 의 맨 profile
줄 세공된
HOME="c://path/to/custom/root/"
.
#THE FIX WAS ADDING THE FOLLOWING LINE TO THE TOP OF THE PROFILE FILE
HOME="c://path/to/custom/root/"
# below are the original contents ===========
# To the extent possible under law, ..blah blah
# Some resources...
# Customizing Your Shell: http://www.dsl.org/cookbook/cookbook_5.html#SEC69
# Consistent BackSpace and Delete Configuration:
# http://www.ibb.net/~anne/keyboard.html
# The Linux Documentation Project: http://www.tldp.org/
# The Linux Cookbook: http://www.tldp.org/LDP/linuxcookbook/html/
# Greg's Wiki http://mywiki.wooledge.org/
# Setup some default paths. Note that this order will allow user installed
# software to override 'system' software.
# Modifying these default path settings can be done in different ways.
# To learn more about startup files, refer to your shell's man page.
MSYS2_PATH="/usr/local/bin:/usr/bin:/bin"
MANPATH="/usr/local/man:/usr/share/man:/usr/man:/share/man:${MANPATH}"
INFOPATH="/usr/local/info:/usr/share/info:/usr/info:/share/info:${INFOPATH}"
MINGW_MOUNT_POINT=
if [ -n "$MSYSTEM" ]
then
case "$MSYSTEM" in
MINGW32)
MINGW_MOUNT_POINT=/mingw32
PATH="${MINGW_MOUNT_POINT}/bin:${MSYS2_PATH}:${PATH}"
PKG_CONFIG_PATH="${MINGW_MOUNT_POINT}/lib/pkgconfig:${MINGW_MOUNT_POINT}/share/pkgconfig"
ACLOCAL_PATH="${MINGW_MOUNT_POINT}/share/aclocal:/usr/share/aclocal"
MANPATH="${MINGW_MOUNT_POINT}/share/man:${MANPATH}"
;;
MINGW64)
MINGW_MOUNT_POINT=/mingw64
PATH="${MINGW_MOUNT_POINT}/bin:${MSYS2_PATH}:${PATH}"
PKG_CONFIG_PATH="${MINGW_MOUNT_POINT}/lib/pkgconfig:${MINGW_MOUNT_POINT}/share/pkgconfig"
ACLOCAL_PATH="${MINGW_MOUNT_POINT}/share/aclocal:/usr/share/aclocal"
MANPATH="${MINGW_MOUNT_POINT}/share/man:${MANPATH}"
;;
MSYS)
PATH="${MSYS2_PATH}:/opt/bin:${PATH}"
PKG_CONFIG_PATH="/usr/lib/pkgconfig:/usr/share/pkgconfig:/lib/pkgconfig"
;;
*)
PATH="${MSYS2_PATH}:${PATH}"
;;
esac
else
PATH="${MSYS2_PATH}:${PATH}"
fi
MAYBE_FIRST_START=false
SYSCONFDIR="${SYSCONFDIR:=/etc}"
# TMP and TEMP as defined in the Windows environment must be kept
# for windows apps, even if started from msys2. However, leaving
# them set to the default Windows temporary directory or unset
# can have unexpected consequences for msys2 apps, so we define
# our own to match GNU/Linux behaviour.
ORIGINAL_TMP=$TMP
ORIGINAL_TEMP=$TEMP
#unset TMP TEMP
#tmp=$(cygpath -w "$ORIGINAL_TMP" 2> /dev/null)
#temp=$(cygpath -w "$ORIGINAL_TEMP" 2> /dev/null)
#TMP="/tmp"
#TEMP="/tmp"
case "$TMP" in *\\*) TMP="$(cygpath -m "$TMP")";; esac
case "$TEMP" in *\\*) TEMP="$(cygpath -m "$TEMP")";; esac
test -d "$TMPDIR" || test ! -d "$TMP" || {
TMPDIR="$TMP"
export TMPDIR
}
# Define default printer
p='/proc/registry/HKEY_CURRENT_USER/Software/Microsoft/Windows NT/CurrentVersion/Windows/Device'
if [ -e "${p}" ] ; then
read -r PRINTER < "${p}"
PRINTER=${PRINTER%%,*}
fi
unset p
print_flags ()
{
(( $1 & 0x0002 )) && echo -n "binary" || echo -n "text"
(( $1 & 0x0010 )) && echo -n ",exec"
(( $1 & 0x0040 )) && echo -n ",cygexec"
(( $1 & 0x0100 )) && echo -n ",notexec"
}
# Shell dependent settings
profile_d ()
{
local file=
for file in $(export LC_COLLATE=C; echo /etc/profile.d/*.$1); do
[ -e "${file}" ] && . "${file}"
done
if [ -n ${MINGW_MOUNT_POINT} ]; then
for file in $(export LC_COLLATE=C; echo ${MINGW_MOUNT_POINT}/etc/profile.d/*.$1); do
[ -e "${file}" ] && . "${file}"
done
fi
}
for postinst in $(export LC_COLLATE=C; echo /etc/post-install/*.post); do
[ -e "${postinst}" ] && . "${postinst}"
done
if [ ! "x${BASH_VERSION}" = "x" ]; then
HOSTNAME="$(/usr/bin/hostname)"
profile_d sh
[ -f "/etc/bash.bashrc" ] && . "/etc/bash.bashrc"
elif [ ! "x${KSH_VERSION}" = "x" ]; then
typeset -l HOSTNAME="$(/usr/bin/hostname)"
profile_d sh
PS1=$(print '\033]0;${PWD}\n\033[32m${USER}@${HOSTNAME} \033[33m${PWD/${HOME}/~}\033[0m\n$ ')
elif [ ! "x${ZSH_VERSION}" = "x" ]; then
HOSTNAME="$(/usr/bin/hostname)"
profile_d zsh
PS1='(%n@%m)[%h] %~ %% '
elif [ ! "x${POSH_VERSION}" = "x" ]; then
HOSTNAME="$(/usr/bin/hostname)"
PS1="$ "
else
HOSTNAME="$(/usr/bin/hostname)"
profile_d sh
PS1="$ "
fi
if [ -n "$ACLOCAL_PATH" ]
then
export ACLOCAL_PATH
fi
export PATH MANPATH INFOPATH PKG_CONFIG_PATH USER TMP TEMP PRINTER HOSTNAME PS1 SHELL tmp temp
test -n "$TERM" || export TERM=xterm-256color
if [ "$MAYBE_FIRST_START" = "true" ]; then
sh /usr/bin/regen-info.sh
if [ -f "/usr/bin/update-ca-trust" ]
then
sh /usr/bin/update-ca-trust
fi
clear
echo
echo
echo "###################################################################"
echo "# #"
echo "# #"
echo "# C A U T I O N #"
echo "# #"
echo "# This is first start of MSYS2. #"
echo "# You MUST restart shell to apply necessary actions. #"
echo "# #"
echo "# #"
echo "###################################################################"
echo
echo
fi
unset MAYBE_FIRST_START
저는 이것이 오래된 질문이라는 것을 알지만, 이것이 "gitbash home dir window"에 대한 최고의 구글 결과이기 때문에 제 연구 결과를 추가하기로 했습니다.
아무리 노력해도 네트워크 드라이브를 제외한 다른 곳에서 시작할 수 없었습니다. (U:) 이 경우 모든 작업에 응답하는 데 15-20초가 걸렸습니다. (VPN의 원격 직원, 국가 반대편에서 호스팅되는 네트워크 드라이브)
창에 HOME과 HOMEDIR 변수를 설정해 보았습니다.
git 설치의 setc/profile 파일에서 HOME과 HOMEDIR 변수를 설정해 보았습니다.
Git-bash 바로 가기에서 "시작"을 C:/user/myusername으로 편집하려고 했습니다.
git-interval 셸 내부의 "env" 명령은 올바른 c:/user/myusername을 표시합니다.하지만 Git-bash는 여전히 U:에서 시작됩니다.
궁극적으로 이 문제를 해결한 것은 Git-bash 바로 가기를 편집하고 대상 줄에서 "--cd-to-home"을 제거하는 것이었습니다.
Windows 10에서 최신 버전의 Git-for-Windows 2.22.0을 실행하고 있습니다.
그렇게,
$HOME
제가 수정해야 할 것입니다.하지만 나는 이 신화적인 장소를 찾을 수 없었습니다.
$HOME
변수가 설정되어 있어서 Linux 시스템 버전의 PATH인지 뭔지 짐작했습니다.
Git 2.23(2019년 3분기)은 어떻게 하는지에 대해 매우 명확합니다.HOME
설정됩니다.
카르스텐 kblees
블리스()의 위원회 12a955(2019년 7월 4일)를 참조하십시오.
(주니오 C 하마노에 의해 합병 -- -- 커밋 fc613d2, 2019년 7월 19일)
mingw: 시작 시 HOME 초기화
HOME
초기화는 역사적으로 다음과 같은 많은 다른 장소에서 복제되었습니다./etc/profile
과 같은git-bash.vbs
그리고.gitk.cmd
그리고 (약간 부서지기는 했지만)git-wrapper
.심지어 다음과 같은 관련이 없는 프로젝트도
GitExtensions
그리고.TortoiseGit
Git를 직접 호출할 수 있으려면 동일한 논리를 구현해야 합니다.화기
HOME
Git 고유의 시작 코드를 사용하여 모든 중복 초기화 코드를 폐기할 수 있습니다.
mingw.c에는 다음 코드가 포함됩니다.
/* calculate HOME if not set */ if (!getenv("HOME")) { /* * try $HOMEDRIVE$HOMEPATH - the home share may be a network * location, thus also check if the path exists (i.e. is not * disconnected) */ if ((tmp = getenv("HOMEDRIVE"))) { struct strbuf buf = STRBUF_INIT; strbuf_addstr(&buf, tmp); if ((tmp = getenv("HOMEPATH"))) { strbuf_addstr(&buf, tmp); if (is_directory(buf.buf)) setenv("HOME", buf.buf, 1); else tmp = NULL; /* use $USERPROFILE */ } strbuf_release(&buf); } /* use $USERPROFILE if the home share is not available */ if (!tmp && (tmp = getenv("USERPROFILE"))) setenv("HOME", tmp, 1); }
동일:$HOME
위해서git bash
Windows 10(윈도우 10)에서 네트워크 드라이브(느린 응답성)로 설정되었습니다.시스템 환경 변수, Git 프로필 등을 변경할 수 있는 권한이 없습니다.사용자를 위해 HOME 변수를 추가할 수 있습니다.
- 시작 시 "환경" 검색
- "시스템 환경 변수 편집"이 아닌 "계정 환경 변수 편집"으로 이동합니다.
- "환경 변수" 창에서 "XYZXYZ용 사용자 변수" --> "새로 만들기"
- "새 사용자 변수"에서 -->
- "변수 이름:"을 "HOME"로 설정
- "변수 값:"을 "C:"로 설정합니다.\사용자\XYZXYZ"(또는 필요한 항목)를 클릭합니다.
- restart열기) (작닫/기기)
git bash
, 테스트, 편집ls ~
저는 정확히 같은 문제에 직면했습니다.홈 드라이브가 네트워크 드라이브에 매핑되었습니다.또한.
- 홈 드라이브에 쓰기 권한 없음
- Gitbash 프로파일에 대한 쓰기 액세스 권한 없음
- 제어판에서 환경 변수를 변경할 수 있는 관리자 권한이 없습니다.
하지만 는 하만아래명작서업저고수추있다었니습가할는지를 추가할 수.HOME
환경 변수에 적용됩니다.
rundll32 sysdm.cpl,EditEnvironmentVariables
https://stackoverflow.com/a/32233667/4849403 이라는 답변을 바탕으로 저는 갑자기 유용하게 사용될 것이라고 보완하고 싶습니다.
우리 회사에는 GPO가 설치되어 있어서 어떤 변경을 하더라도 그룹 정책으로 대체될 것입니다.HOME 폴더(예: T:)는 모든 사용자에 대해 DFS 기반 네트워크 공유로 구성된 다음(대부분 가능), T: 드라이브 루트에 파일을 생성하도록 구성된 다음 저장소를 복제하거나 사용자 .gitconfg를 생성하려고 하면 오류가 발생합니다.git/etc/profile 파일에서 HOME 변수를 다음과 같이 재구성했습니다.
HOME=/c/users/${USERNAME}
또한 복제와 같은 작업을 수행하기 위해 Windows CMD에서 여전히 "HOME=T:/"이기 때문에 gitbash를 사용하기 때문입니다.
여기 있습니다.여기 있습니다. 시스템 복원 지점을 만듭니다.관리자 계정으로 로그온합니다.C: 폴더를 삭제합니다.\일부 사용자.폴더 c:\Users\SomeUser를 c:\SomeUser가 되도록 이동합니다.레지스트리 편집기를 엽니다.HKLM\SOFTWARE\Microsoft\로 이동합니다.Windows NT\CurrentVersion\ProfileList.c:\Users\SomeUser를 가리키는 것을 찾을 때까지 "ProfileImagePath"를 검색합니다.c:\SomeUser를 가리키도록 수정합니다.문제가 발생할 경우 시스템 복원을 사용합니다.
언급URL : https://stackoverflow.com/questions/32232978/change-the-location-of-the-directory-in-a-windows-install-of-git-bash
'programing' 카테고리의 다른 글
VBA(Excel)에서 표준 시간대 정보 가져오기 (0) | 2023.07.02 |
---|---|
mongodb에서 문서를 캐스케이드로 삭제하는 방법은 무엇입니까? (0) | 2023.06.27 |
OpenXml Excel: 메일 주소 뒤에 있는 모든 단어에 오류 발생 (0) | 2023.06.27 |
첫 글자 "Select One"으로 안드로이드 스피너를 만드는 방법은? (0) | 2023.06.27 |
Excel 데이터 리더.AsDataSet이 작동하지 않음 (0) | 2023.06.27 |