programing

전체 폴더를 리포지토리에 재귀적으로 추가

testmans 2023. 6. 19. 21:17
반응형

전체 폴더를 리포지토리에 재귀적으로 추가

GitHub의 마스터 브랜치에 브랜치를 추가하고 해당 브랜치에 폴더를 푸시하려고 합니다.

분기의 폴더 구조는 -SocialApp/SourceCode/DevTrunk/SocialApp과 같고 모든 소스 코드 파일은 마지막 폴더에 있습니다.

다음 Git 명령을 사용하고 있습니다.

git add *
git commit -m with the message
git push

이렇게 하면 첫 번째 폴더 "SocialApp"만 GitHub에 푸시되고 폴더 안에 있는 SourceCode 폴더는 무시됩니다.이거 어떻게 고쳐요?

확인:.gitignore파일(하위 디렉터리가 무시되는 경우).

그럼 다시 시도해 보세요.

git add --all
git commit -am "<commit message>"
git push

세우다

  • 로컬 서버의 로컬 리포지토리
  • 클라이언트가 LAN을 통해 로컬 서버에 연결되어 있습니다.

업데이트(2020년 9월): 사용foldername/\*대신에foldername/\\*:

git add foldername/\*

서버에 도착하려면...

git commit -m "comments..."
git push remote_server_name master

대부분 사용자는 remote_server_name을 오리진으로 할당합니다...

git remote add remote_server_name username@git_server_ip:/path/to/git_repo

이것은 저에게 효과가 있었습니다.

git add . --force

저의 경우, git repo를 이전에 초기화했기 때문에 하위 디렉터리에 .git 폴더가 있었습니다.서브디렉토리를 추가했을 때는 포함된 파일을 추가하지 않고 서브프로젝트로 추가하기만 했습니다.

하위 디렉터리에서 git 저장소를 제거한 후 폴더를 다시 추가하여 문제를 해결했습니다.

상위 디렉터리에서 호출된 "git add *" 및 "git add SocialApp" 모두 모든 디렉터리를 재귀적으로 추가해야 합니다.

SocialApp/SourceCode/DevTrunk/SocialApp에 파일이 없을 수 있습니다.

"touchSocialApp/SourceCode/DevTrunk/SocialApp/.temporary"(그리고 .gitignore를 확인)를 호출한 다음 git add를 다시 시도합니다.

저는 이것을 간단히 사용했습니다.

git add app/src/release/*

추가할 폴더를 지정하고 사용하기만 하면 됩니다.*안에 있는 모든 것을 재귀적으로 추가하는 것.

시간이 좀 걸린 이 문제에 부딪혔는데, Git이 빈 폴더를 저장하지 않는다는 것을 기억했습니다.저장할 폴더 트리가 있는 경우 Git로 스토리지에 영향을 미치기 위해 최소한 해당 트리의 가장 깊은 폴더에 ".gitkeep" 파일과 같은 파일을 넣습니다.

디렉토리와 디렉토리 내에 있는 모든 파일을 재귀적으로 추가하려면 추가할 디렉토리가 있는 디렉토리로 이동합니다.

$ cd directory
$ git add directoryname

저도 같은 문제가 있었고 .gitignore 파일이 없습니다.저의 문제는 다음과 같은 방법으로 해결되었습니다.모든 하위 디렉터리와 파일이 필요했습니다.

git add <directory>/*

합니다.
경우 수 . 그런 다음 하십시오. 그런 다음 다음 다음 명령을 사용합니다.

git init   //this initializes a .git  repository in your working directory

git remote add origin <URL_TO_YOUR_REPO.git> // this points to correct repository where files will be uploaded

git add *   // this adds all the files to the initialialized git repository

마스터에 병합하기 전에 파일을 변경하는 경우에는 실행하여 변경 사항을 커밋해야 합니다.

git commit -m "applied some changes to the branch"

체크아웃 후에는 마스터 브랜치로 분기

/ 1 시나리오 / 솔루션 1:
다음 항목을 확인합니다.Folder/Sub-folder는 없다니습에 없습니다..gitignore파일, 혹시.


/ 2 시나리오 / 솔루션 2:
기적으로본,git add .반복적으로 작동합니다.


/ 3 기본 제공 / 기본 제공 3:
git add --all :/하며, 원하게작곳는하동활곳,▁smoothly,git add .안 됩니다.
하틀리의)(@Jason Hartley의 논평)


/ 4 기본 제공 / 기본 제공 4:
제가 개인적으로 직면한 문제는 추가하는 것이었습니다.Subfolders or Files다수의 사람들 사이에 공통적이었던 것들.Folders.

예:
Folder/Subfolder-L1/Subfolder-L2/...file12.txt
Folder/Subfolder-L1/Subfolder-L2/Subfolder-L3/...file123.txt
Folder/Subfolder-L1/...file1.txt

그렇게Git나에게 추가할 것을 추천하고 있었습니다.git submodule내가 노력했지만 고통스러웠습니다.


마지막으로 저에게 도움이 된 것은 다음과 같습니다.

1. git add의 마지막 끝에 있는 하나의 파일Folder.
예:
git add Folder/Subfolder-L1/Subfolder-L2/Subfolder-L3/...file123.txt

2. git add --all :/지금이다.
그것은 매우 빠르게 모든 것을 추가할 입니다.Folders,Subfolders그리고.files.


클라이언트 측 프로젝트와 함께 웹 서비스 소스 코드를 포함하고 싶을 때가 있습니다.둘 다 별도의 Git 저장소를 가지고 있습니다.실제로 다음 명령을 사용하여 모든 파일을 추가하는 데 사용됩니다.

git add -A

그러나 어떤 이유에서인지 폴더만 추가됩니다.나중에 나는 서버 파일에도 그것이 있다는 것을 알았습니다..git명령이 작동하지 않도록 폴더를 지정합니다.

tl;dr: 다음이 없는지 확인합니다..git준비할 폴더 안에 있는 폴더입니다.

git add --all my/awesome/stuff/저한테는 효과가 있어요.[1]

  1. https://git-scm.com/docs/git-add

이 작업을 수행하기만 하면 하위 디렉터리에 파일을 쉽게 추가할 수 있습니다.repo의 "상위 디렉터리"에 있는 다음과 같은 작업만 실행하면 됩니다.

$ git add ./subdir/file_in_subdir.txt

이것은 나에게 효과가 있었습니다.

git add -f *

언급URL : https://stackoverflow.com/questions/17743549/recursively-add-the-entire-folder-to-a-repository

반응형