git×유니티가 금지하는 기술!(위험 주의 사용)

2497 단어 GitUnity
다음은git에서 유니티 관리 방법을 소개합니다.

일단gitnore 파일 정렬


만약gitnore가 있다면git는 관리하고 싶지 않은 파일을 알려줄 것입니다.

GitHub로 저장소를 만들 때 이것을 선택하는 것은 거의 문제없다.
지금 제가 쓰고 있는gitnore 2019 0614.
vscode를 사용하기 때문에 .vscode/ 디렉터리를 넣었습니다.
[Ll]ibrary/
[Tt]emp/
[Oo]bj/
[Bb]uild/
[Bb]uilds/
Assets/AssetStoreTools*

# Visual Studio cache directory
.vs/
.vscode/

# Autogenerated VS/MD/Consulo solution and project files
ExportedObj/
.consulo/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd
*.pdb
*.opendb

# Unity3D generated meta files
*.pidb.meta
*.pdb.meta

# Unity3D Generated File On Crash Reports
sysinfo.txt

# Builds
*.apk
*.unitypackage

↓gitnore에 대한 상세한 설명
https://qiita.com/anqooqie/items/110957797b3d5280c44f

git×통일 원칙


 1.작업 전pull.
 2.팀원들은 한 장면을 동시에 가지고 놀지 않는다.(충돌하기 쉬움)
3.100MB 이상의 파일은 git 관리(GitHub의 제한을 받지 않음)
 4.scripts를 편집한 후 git add fileName에서 편집한 스크립트만push합니다.디자이너가 장면과prefab를 변경한 후에 모든 파일만 적용될 수 있습니다...
그러니까 만약에 충돌이 생기면 어떡하지?

금지된 기술(위험 사용)


특정 파일을 분기에 적용하려면

$ git merge --abort 
// conflict処理を中止

$ git checkout -b <newBranch> <origin/remoteBranch>
//newBranchを作って、それからリモートのremoteBranchと同期する、そして自動にnewBranchに切り替え

$ git checkout <branchName> <fileName> 
//branchNameから強制的にfilenameを合併する。もし同じ名前のファイルがあれば、上書きされるので、大変危険なので、必ず新しいブランチを作って操作してください。

$ git push origin <name>:<remote name> -f 
//強制的に<name>ブランチを<remote name>に上書きする。多変危険なので、新しいブランチで操作してください

$git branch -D <branchyName>
//強制的にブランチを削除する。多変危険なので、実行する前にチェックしてください。

↑ 사용 상황: 프로그래머가 로컬에서prefab를 테스트하기 위해 디자이너가 원격으로prefab와 장면을 업데이트했다.이런 상황에서 프로그래머pull가 충돌할 수 있습니다.이런 상황에서 아까처럼 디자이너가 업데이트한 지점을 다운로드하고 git checkout <branchName> <fileName> 필요한 파일을 로컬 지점으로 덮어씁니다.

원격 지점을 로컬 지점으로 덮어쓰려면 (위험하기 때문에master 지점에서 하지 않는 것이 좋습니다)

$ git fetch -all
//すべてのリモートブランチをローカルにダウンロードするが、mergeしない(pull=fetch+merge)

$ git reset --hard origin/branchName
//強制的に現在のブランチをorigin/branchName の状態にする、ログも残されない。大変危険なので、マスターブランチでやらない方がいい。やる前は必ずチェックしてください。

좋은 웹페이지 즐겨찾기