etc./StackOverFlow

원격 Git 리포지토리의 URI(URL)를 변경하는 방법은 무엇입니까?

청렴결백한 만능 재주꾼 2021. 10. 1. 03:17
반응형

질문자 :e-satis


내 하드 드라이브(로컬)에 복제한 USB 키에 리포지토리(원본)가 있습니다. "원본"을 NAS로 옮기고 여기에서 복제를 성공적으로 테스트했습니다.

"local" 설정에서 "origin"의 URI를 변경하여 USB 키가 아닌 NAS에서 가져올 수 있는지 알고 싶습니다.

지금은 두 가지 솔루션을 볼 수 있습니다.

  • 모든 것을 usb-orign에 푸시하고 NAS에 다시 복사합니다(nas-origin에 대한 새로운 커밋으로 인해 많은 작업을 의미함).

  • "로컬"에 새 리모콘을 추가하고 이전 리모콘을 삭제하십시오(내 기록이 깨질까 두렵습니다).



당신은 할 수 있습니다

 git remote set-url origin new.git.url/here

( git help remote 참조) 또는 .git/config 편집하고 URL을 변경할 수 있습니다. 매우 어리석은 일을하지 않는 한 기록을 잃을 위험이 없습니다 (당신의 repo 당신의 기록이기 때문에 걱정되는 경우 repo의 복사본을 만드십시오.)


hobbs

git remote -v # View existing remotes # origin https://github.com/user/repo.git (fetch) # origin https://github.com/user/repo.git (push) git remote set-url origin https://github.com/user/repo2.git # Change the 'origin' remote's URL git remote -v # Verify new remote URL # origin https://github.com/user/repo2.git (fetch) # origin https://github.com/user/repo2.git (push)

리모컨의 URL 변경


Utensil

Git 원본 서버의 호스트 변경

출처 : http://pseudofish.com/blog/2010/06/28/change-host-for-a-git-origin-server/

바라건대 이것은 당신이해야 할 일이 아닙니다. 몇 가지 git 프로젝트에서 공동 작업을 수행하는 데 사용한 서버에서 도메인 이름이 만료되었습니다. 이것은 동기화를 다시 얻기 위해 로컬 저장소를 마이그레이션하는 방법을 찾는 것을 의미했습니다.

업데이트: 최근 git 버전(2010년 2월 이후)에 쉬운 방법이 있음을 지적해 주신 @mawolf에게 감사드립니다.

 git remote set-url origin ssh://newhost.com/usr/local/gitroot/myproject.git

자세한 내용은 매뉴얼 페이지를 참조하십시오.

이전 버전을 사용 중이라면 다음을 시도하십시오.

주의 사항으로 이것은 이름만 다른 동일한 서버일 때만 작동합니다.

가정 새로운 호스트 이름입니다 newhost.com 하고 이전했다 oldhost.com 변화가 매우 간단합니다.

작업 디렉토리에서 .git/config 파일을 편집합니다. 다음과 같이 표시되어야 합니다.

 [remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = ssh://oldhost.com/usr/local/gitroot/myproject.git

oldhost.comnewhost.com 변경하고 파일을 저장하면 완료됩니다.

제한된 테스트( git pull origin; git push origin; gitx )에서 모든 것이 순서대로 보입니다. 그리고 예, git 내부를 엉망으로 만드는 것은 나쁜 형태라는 것을 압니다.


yoda

git remote set-url origin git://new.location

(또는 .git/config [remote "origin"] url = 행을 편집합니다.

리모컨을 검사하여 작동했는지 확인할 수 있습니다.

 git remote -v # origin git://new.location (fetch) # origin git://new.location (push)

다음에 푸시할 때 새 업스트림 분기를 지정해야 합니다. 예:

 git push -u origin master

참조: GitHub: 리모컨의 URL 변경


Zaz

원격 URL 전환

터미널을 엽니다.

Ist 단계: - 현재 작업 디렉토리를 로컬 프로젝트로 변경합니다.

2단계: - 변경하려는 리모컨의 이름을 얻기 위해 기존 리모컨을 나열합니다.

git remote -v

 origin https://github.com/USERNAME/REPOSITORY.git (fetch) origin https://github.com/USERNAME/REPOSITORY.git (push)

git remote set-url 명령을 사용하여 원격 URL을 HTTPS에서 SSH로 변경합니다.

3단계: - git remote set-url origin git@github.com:USERNAME/REPOSITORY.git

4단계: - 이제 원격 URL이 변경되었는지 확인합니다.

git remote -v 새 원격 URL 확인

 origin git@github.com:USERNAME/REPOSITORY.git (fetch) origin git@github.com:USERNAME/REPOSITORY.git (push)

VIKAS KOHLI

여기 에서 볼 수 있듯이,

 $ git remote rm origin $ git remote add origin git@github.com:aplikacjainfo/proj1.git $ git config master.remote origin $ git config master.merge refs/heads/master

Zahid Hassan Shaikot

  1. gitbash git remote rm origin 에서 명령을 사용하여 원점 제거
  2. 이제 gitbash git remote add origin을 사용하여 새 Origin을 추가합니다(비트 버킷의 프로젝트 저장소에서 HTTP URL 복사) 완료

Sunil Chaudhary

repo 터미널에서 아래 명령을 작성하십시오.

 git remote set-url origin git@github.com:<username>/<repo>.git

원격에서 URL을 변경하는 방법에 대한 자세한 내용은 링크를 참조하십시오.


viveknaskar

git 원격 set-url {이름} {url}

 git remote set-url origin https://github.com/myName/GitTest.git

최봉재

복제하면 로컬이 자동으로 구성됩니다.

복제되는 원격 URL입니다.

git remote -v 사용하여 확인할 수 있습니다.

변경하려는 경우

 git remote set-url origin https://github.io/my_repo.git

여기,

원산지 - 귀하의 지점

기존 브랜치를 덮어쓰고 싶다면 계속 사용할 수 있습니다. 기존 브랜치를 덮어쓸 것입니다 ... 그렇게 할 것입니다.

 git remote remove url and git remote add origin url

당신을위한...


Mohideen bin Mohammed

나는 일했다:

 git remote set-url origin <project>

Diego Santa Cruz Mendezú

git 원격 연결을 확인하려면:

 git remote -v

이제 로컬 저장소를 원격 git으로 설정합니다.

 git remote set-url origin https://NewRepoLink.git

이제 다음 코드를 사용하여 업스트림으로 만들거나 푸시합니다.

git push --set-upstream origin master -f


Anupam Maurya

로컬 리포지토리의 프로젝트 루트로 이동하여 기존 원격을 확인합니다.

 git remote -v

저장소에서 SSH 를 사용하는 경우 다음과 같은 내용이 표시됩니다.

 > origin git@github.com:USERNAME/REPOSITORY.git (fetch) > origin git@github.com:USERNAME/REPOSITORY.git (push)

저장소에서 HTTPS 를 사용하는 경우 다음과 같은 내용이 표시됩니다.

 > origin https://github.com/USERNAME/REPOSITORY.git (fetch) > origin https://github.com/USERNAME/REPOSITORY.git (push)

URL 변경은 git remote set-url 됩니다. git remote -v 의 출력에 따라 다음과 같은 방식으로 URL을 변경할 수 있습니다.

SSH의 경우 다음과 같이 URL을 REPOSITORY.git 에서 NEW_REPOSITORY.git 변경할 수 있습니다.

 $ git remote set-url origin git@github.com:USERNAME/NEW_REPOSITORY.git

HTTPS의 경우 다음과 같이 URL을 REPOSITORY.git 에서 NEW_REPOSITORY.git 변경할 수 있습니다.

 $ git remote set-url origin https://github.com/USERNAME/NEW_REPOSITORY.git

참고 : GitHub 사용자 이름을 변경한 경우 위와 동일한 프로세스를 따라 저장소와 연결된 사용자 이름의 변경 사항을 업데이트할 수 있습니다. git remote set-url 명령에서 USERNAME 만 업데이트하면 됩니다.


Saurabh

여기에 이미지 설명 입력

문제 해결 :

리모컨을 변경하려고 할 때 이러한 오류가 발생할 수 있습니다. 해당 원격 '[이름]'이(가) 없습니다.

이 오류는 변경하려는 리모컨이 존재하지 않음을 의미합니다.

git remote set-url 소파케 https://github.com/octocat/Spoon-Knife fatal: 그러한 원격 '소파'가 없습니다

원격 이름을 올바르게 입력했는지 확인하십시오.

참조 : https://help.github.com/articles/change-a-remote-s-url/


Amitesh Bharti

Git Bash에서 다음 명령을 입력합니다.

git remote set-url origin https://NewRepoLink.git

자격 증명 입력

완료


devDeejay

이를 수행하는 방법에는 여러 가지가 있습니다.

콘솔

 git remote set-url origin [Here new url]

저장소가 있는 장소에서 열었는지 확인하십시오.

구성

.git/config(리포지토리와 동일한 폴더)에 있습니다.

 [core] repositoryformatversion = 0 filemode = false bare = false logallrefupdates = true symlinks = false ignorecase = true [remote "origin"] url = [Here new url] <------------------------------------ ...

TortoiseGit

1단계 - 설정 열기

2단계 - URL 변경

그런 다음 URL을 수정하면 됩니다.

소스 트리

  1. 도구 모음에서 "설정" 버튼을 클릭하여 저장소 설정 창을 엽니다.

  2. "추가"를 클릭하여 저장소에 원격 저장소 경로를 추가하십시오. "원격 세부 정보" 창이 열립니다.

  3. 원격 경로의 이름을 입력합니다.

  4. 원격 저장소의 URL/경로를 입력하십시오.

  5. 원격 리포지토리에 대한 호스팅 서비스의 사용자 이름을 입력합니다.

  6. '확인'을 클릭하여 원격 경로를 추가합니다.

  7. 리포지토리 설정 창으로 돌아가서 '확인'을 클릭합니다. 새 원격 경로를 지금 저장소에 추가해야 합니다.

  8. 이미 추가된 원격 경로를 편집해야 하는 경우 '편집' 버튼을 클릭하기만 하면 됩니다. 원격 경로의 세부 정보(URL/경로/호스트 유형)를 편집할 수 있는 "원격 세부 정보" 창으로 이동해야 합니다.

  9. 원격 저장소 경로를 제거하려면 '제거' 버튼을 클릭하십시오.

여기에 이미지 설명 입력

여기에 이미지 설명 입력

참조 지원하다


Przemek Struciński

원격 git URI를 https://github.com 아닌 git@github.com

 git remote set-url origin git@github.com:<username>/<repo>.git

예시:

 git remote set-url origin git@github.com:Chetabahana/my_repo_name.git

이점은 ssh-agent 를 사용할 때 git push 자동으로 수행할 수 있다는 것입니다.

 #!/bin/bash # Check ssh connection ssh-add -l &>/dev/null [[ "$?" == 2 ]] && eval `ssh-agent` ssh-add -l &>/dev/null [[ "$?" == 1 ]] && expect $HOME/.ssh/agent # Send git commands to push git add . && git commit -m "your commit" && git push -u origin master

$HOME/.ssh/agent 스크립트 파일을 넣어 아래와 같이 예상 을 사용하여 ssh-add 를 실행하도록 합니다.

 #!/usr/bin/expect -f set HOME $env(HOME) spawn ssh-add $HOME/.ssh/id_rsa expect "Enter passphrase for $HOME/.ssh/id_rsa:" send "<my_passphrase>\n"; expect "Identity added: $HOME/.ssh/id_rsa ($HOME/.ssh/id_rsa)" interact

Chetabahana

원격 업스트림을 변경 git remote set-url origin <url>


더 많은 업스트림을 추가 git remote add newplace <url>

git push origin <branch> 또는 git push newplace <branch> 작업 위치를 선택할 수 있습니다.


Anderson Cossul

TortoiseGit을 사용하는 경우 다음 단계를 따르세요.

  1. 로컬 체크아웃 폴더로 이동하고 마우스 오른쪽 버튼을 클릭하여 TortoiseGit -> Settings
  2. 왼쪽 창에서 Git -> Remote
  3. 오른쪽 창에서 origin
  4. URL 텍스트 상자 값을 새 원격 저장소가 있는 곳으로 변경하십시오.

브랜치와 모든 로컬 커밋은 그대로 유지되며 이전처럼 계속 작업할 수 있습니다.


Vipul bhojwani

config 파일을 수정하여 url을 변경할 수 있습니다. 프로젝트 루트로 이동합니다.

 nano .git/config

그런 다음 url 필드를 편집하고 새 URL을 설정합니다. 변경 사항을 저장합니다. 명령을 사용하여 변경 사항을 확인할 수 있습니다.

 git remote -v

Abhi Das

다른 접근 방식은 '이전' 원점의 이름을 바꾸고(아래 예에서는 단순히 old-origin 이름을 지정함) 새 원본을 추가하는 것입니다. 이따금씩 이전 오리진으로 푸시할 수 있기를 원하는 경우 원하는 접근 방식 이 될 수 있습니다.

 git remote rename origin old-origin git remote add origin git@new-git-server.com>:<username>/<projectname>.git

그리고 로컬 상태를 새 원본으로 푸시해야 하는 경우:

 git push -u origin --all git push -u origin --tags

jojo

나에게 허용 된 답변은 가져 오기의 경우에만 작동했지만 가져 오기는 작동하지 않았습니다. 푸시에서도 작동하도록 다음을 수행했습니다.

 git remote set-url --push origin new.git.url/here

가져오기 URL을 업데이트하려면:

 git remote set-url origin new.git.url/here

풀 URL을 업데이트하려면:

 git remote set-url --push origin new.git.url/here

Shailendra Madda

리모컨 제거

git remote rm 명령을 사용하여 저장소에서 원격 URL을 제거합니다.

 $ git remote -v # View current remotes > origin https://github.com/OWNER/REPOSITORY.git (fetch) > origin https://github.com/OWNER/REPOSITORY.git (push) > destination https://github.com/FORKER/REPOSITORY.git (fetch) > destination https://github.com/FORKER/REPOSITORY.git (push) $ git remote rm destination # Remove remote $ git remote -v # Verify it's gone > origin https://github.com/OWNER/REPOSITORY.git (fetch) > origin https://github.com/OWNER/REPOSITORY.git (push)

Tayyab Roy

원본 URL에도 사용자 이름과 비밀번호를 설정하려면 다음 단계를 따르세요.

변수의 비밀번호를 내보내면 특수 문자 문제를 피할 수 있습니다.

단계:

 export gituser='<Username>:<password>@' git remote set-url origin https://${gituser}<gitlab_repo_url> git push origin <Branch Name>

Rajesh Somasundaram

당신의 특권을 확인하십시오

제 경우에는 사용자 이름을 확인해야 합니다.

별도의 자격 증명이 있는 2~3개의 저장소가 있습니다.

문제는 내 권한입니다. 두 개의 개인 git 서버와 저장소가 있습니다.

이 두 번째 계정은 새 저장소의 관리자이고 첫 번째 계정은 내 기본 사용자 계정이며 먼저 권한을 부여해야 합니다.


saber tabatabaee yazdi

조직 소유자이거나 저장소에 대한 관리자 권한이 있는 경우 저장소 이름을 변경할 수 있습니다.

 git remote set-url origin new_url

더 알고


MD SHAYON

Visual Studio 2019에서 이 변경을 하려는 사람들을 위해

팀 탐색기 열기(Ctrl+M)

홈 -> 설정

힘내 -> 저장소 설정

리모콘 -> 편집

여기에 이미지 설명 입력


Dinch

저장소가 비공개인 경우

  1. 시작 메뉴에서 제어판 열기
  2. 사용자 계정 선택
  3. 왼쪽 메뉴에서 "자격 증명 관리"를 선택하십시오.
  4. Git 또는 GitHub와 관련된 모든 자격 증명 삭제

참조


Mike Lee

(Windows PS만 해당) 모든 로컬 저장소에서 서버/프로토콜을 재귀적으로 변경하려면

 Get-ChildItem -Directory -Recurse -Depth [Number] -Hidden -name | %{$_.replace("\.git","")} | %{git -C $_ remote set-url origin $(git -C $_ remote get-url origin).replace("[OLD SERVER]", "[NEW SERVER]")}

Thomas Brüggemann

Sed/grep이 있는 Linux/Mac을 사용하는 경우 연결을 잃지 않고 변경하기가 매우 쉽습니다.

최근에 구성에서 로컬로 모든 저장소에 대한 사용자 이름을 변경했지만 원격 라인에 대해서도 동일한 접근 방식을 수행했습니다.

 VARIABLE_FIND='old'; VARIABLE_REPLACE='new'; path_name='~/PycharmProjects/*/.git/'; grep -rl --include=config "${VARIABLE_FIND}" "${path_name}" | xargs sed -i "s|${VARIABLE_FIND}|${VARIABLE_REPLACE}|g"

일치하는 항목이 있는 전체 줄을 바꾸려면 이 작업을 수행할 수 있습니다.

 VARIABLE_FIND='someneedle'; VARIABLE_REPLACE='somenewvalue'; path_name='/home/*/' grep -rl --include=config "${VARIABLE_FIND}" "${path_name}" | xargs sed -i "/${VARIABLE_FIND//\//\\/}/c\\${VARIABLE_REPLACE}" ;

참조: Sed를 사용하여 문자열이 포함된 전체 줄 바꾸기


Mik R

출처 : 여기를 클릭하세요


출처 : http:www.stackoverflow.com/questions/2432764/how-to-change-the-uri-url-for-a-remote-git-repository

반응형