git - Unity3D উৎস নিয়ন্ত্রণের জন্য গিট কিভাবে ব্যবহার করবেন?




version-control (9)

ইউনিটি 3D এর সাথে Git সোর্স নিয়ন্ত্রণ ব্যবহার করার জন্য সর্বোত্তম অনুশীলন কী, বিশেষ করে ইউনিটি 3D প্রকল্পগুলির বাইনারি প্রকৃতির সাথে মোকাবিলা করার ক্ষেত্রে? ওয়ার্কফ্লো বর্ণনা করুন, জিথিনগোরে কোন পথ অন্তর্ভুক্ত করা হবে, ইউনিটি এবং / অথবা প্রকল্পে কোন সেটিংস সেট করা উচিত এবং যে কোনও বিশেষ জিনিস যা উল্লেখ করা উচিত।

দ্রষ্টব্য: আমি বুঝতে পারি যে অ্যাসেট সার্ভারটি ব্যবহার করা একতা-প্রস্তাবিত উপায়, তবে আমি বিভিন্ন কারণে গিট ব্যবহার করতে চাই। দয়া করে কোনও উত্তর দেবেন না বা যুক্তি দেবেন যে আমি কেবলমাত্র সম্পদ সার্ভারটি ব্যবহার করব। সম্পদ সার্ভার সত্যিই আমার জন্য একটি বিকল্প নয়।


আপনি ইউনিথির ইউটিউটিতে গিটব ফর ইউনিটি ব্যবহার করতে পারেন, একটি ইউনিটি এক্সটেনশান যা গিট ওয়ার্কফ্লো আনতে পারে।

https://unity.github.com/ এক্সটেনশনটির সংস্করণ 1.0 প্রকাশ করেছে।

  • এটি বড় সম্পদগুলি সঠিকভাবে সঞ্চয় করতে git-lfs (git বড় ফাইল সমর্থন) ব্যবহার করে
  • ফাইল লকিং যেহেতু অন্য কেউ আপনার সম্পদ commitsites overwrites
  • ধাক্কা এবং কোন রিমোট রিপোজিটরি থেকে / টানুন
  • আপনি ইউনিটি অ্যাসেট স্টোর এ এটি ডাউনলোড করতে পারেন: https://assetstore.unity.com/packages/tools/version-control/github-for-unity-118069

আমরা এখন গীথুবকে ঐক্য সম্প্রসারণের সাথে ঐক্যবদ্ধতার একত্রিত একীকরণ ... https://unity.github.com/

ইউনিটি এক্সটেনশনটির জন্য নতুন গিথ হাব GitHub ওয়ার্কফ্লো এবং ইউনিটকে আরও অনেক কিছু দেয়, যা গিট এলএফএস এবং ফাইল লকিংয়ের মাধ্যমে বড় ফাইলগুলির জন্য সমর্থন প্রদান করে।

প্রকল্পের লেখার সময় আলফা, কিন্তু এখনও ব্যক্তিগত প্রকল্পের জন্য ব্যবহারযোগ্য।


আমি ভেবেছিলাম যে আমি আগ্রহী যে কারো জন্য একটি সহজ। .gitignore পোস্ট করতে পারে:

# Ignore Everything
/*

# Except for these:
!/.gitignore
!/Assets
!/ProjectSettings

ইউনিটি 4.3 এ আপনাকে পছন্দগুলি থেকে বহিরাগত বিকল্পটি সক্ষম করতে হয়েছিল, কিন্তু ইউনিটি 4.5 থেকে তারা বিকল্পটি বাদ দিয়েছিল, তাই সম্পূর্ণ সেটআপ প্রক্রিয়াটি মনে হচ্ছে:

  1. Editor → Project Settings → Editor → Version Control Mode Visible Meta Files স্যুইচ করুন
  2. Editor → Project Settings → Editor → Asset Serialization Mode Force Text স্যুইচ করুন
  3. File মেনু থেকে দৃশ্য এবং প্রকল্প সংরক্ষণ করুন

এছাড়াও আমাদের দল একটি বিট আরো বর্ধিত ব্যবহার করা হয়। .gitignore ফাইল:

# =============== #
# Unity generated #
# =============== #
Temp/
Library/

# ===================================== #
# Visual Studio / MonoDevelop generated #
# ===================================== #
ExportedObj/
obj/
*.svd
*.userprefs
/*.csproj
*.pidb
*.suo
/*.sln
*.user
*.unityproj
*.booproj

# ============ #
# OS generated #
# ============ #
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

উল্লেখ্য, ProjectSettings অধীনে থাকা আপনার জন্য কেবলমাত্র ফোল্ডারগুলি Assets এবং ProjectSettings

সোর্স নিয়ন্ত্রণ অধীনে ইউনিটি প্রকল্প রাখা সম্পর্কে আরও তথ্য আপনি এই পোস্টে খুঁজে পেতে পারেন।


ঐক্য-3 ডি সোর্স কোড সংস্করণ নিয়ন্ত্রণের জন্য git ব্যবহার করার সময় মনে রাখার প্রধান বিষয়গুলি:

(A) লাইব্রেরির ফোল্ডারে চেক করবেন না । অতীতে আমি এই ভুল একাধিক বার করেছি এবং এর জন্য কষ্ট পেয়েছি! মুছতে অথবা আপনার প্রকল্প / ফাইল যোগ করার আগে লাইব্রেরির ফোল্ডার মুছুন।

(বি) নতুন ইউনিটি সংস্করণগুলির জন্য "দৃশ্যমান মেটা ফাইলগুলি" ব্যবহার করুন - 5.3.4 এবং তারপরে এটি ডিফল্টভাবে ঘটবে। পূর্ববর্তী সংস্করণের কিছুগুলির জন্য আপনাকে নীচের সেটিংস পরিবর্তন করতে হবে: সম্পাদনা-> প্রকল্প সেটিংস-> সংস্করণ নিয়ন্ত্রণ

(সি) ইউনিটির জন্য একটি। জিটিগিনোর ফাইলটি ব্যবহার করুন - নিশ্চিত করুন যে স্যানিটি রক্ষণাবেক্ষণ করা হচ্ছে এবং ফাইলগুলি অপ্রয়োজনীয়ভাবে যুক্ত করা হয় না - যদি Android / Tizen - এপিকে এবং টিপিকে ফাইলগুলিকে সংগ্রহস্থলে যোগ করা থেকে বাদ দেওয়ার জন্য নিয়মগুলি যোগ করুন। গুগলের চারপাশে একটি .gitignore ফাইলটি ঐক্যের জন্য ব্যবহার করুন অথবা অন্যথায় এই মডেলটি ব্যবহার করুন। গিটহাব দ্বারা সরবরাহিত একতার জন্য জিগিনগোর: https://github.com/github/gitignore/blob/master/Unity.gitignore

(ডি) নিশ্চিত করুন যে .gitignore ফাইলটি প্রথম ফাইল যুক্ত হিসাবে রিপোজিটরিতে যোগ করা হয়েছে - অতীতে আমি ব্যক্তিগতভাবে জিগ্যেগোর ফাইল যোগ করতে মিস করেছি। এই ঘটনার কেন্দ্রে বেশিরভাগ চিন্তাভাবনা আছে- কিন্তু আজকাল আমি কেবল কপি করে এবং জিগিনগোরোর ফাইলটি সংগ্রহস্থল সেট আপ করার প্রথম ধাপ হিসাবে যোগ করি।

তাই ... একটি ইউনিটি প্রকল্প তৈরি করার জন্য তৈরি করতে, নিম্নলিখিতগুলি করুন:

(1) প্রকল্প ফোল্ডারে যান

(2) টাইপ জিট init।

(3) .gitignore ফাইলটি অনুলিপি করুন: MacOS এ: cp ~ / downloads / .gitignore উইন্ডোজগুলিতে: অনুলিপি করুন: ব্যবহারকারীগণ [আপনার ব্যবহারকারীর নাম] \ Downloads.gitignore।

(4) গিট যোগ করুন

(5) গিট যোগ করুন *

এই সাহায্য করে ... সব ভাল!


বিবৃত সবকিছু যোগ করার জন্য, এটি ইউনিটি সঙ্গে গিট lfs ব্যবহার আদর্শ। আমি এটা ব্যবহার করে আসছি এবং এটি কোন সমস্যা ছিল না।

আপনি এই যোগ করতে চান। আপনার gitignore ফাইল পাশে gitattributes

*.cs diff=csharp text
*.cginc text
*.shader text

*.mat merge=unityyamlmerge eol=lf
*.anim merge=unityyamlmerge eol=lf
*.unity merge=unityyamlmerge eol=lf
*.prefab merge=unityyamlmerge eol=lf
*.physicsMaterial2D merge=unityyamlmerge eol=lf
*.physicsMaterial merge=unityyamlmerge eol=lf
*.asset merge=unityyamlmerge eol=lf
*.meta merge=unityyamlmerge eol=lf
*.controller merge=unityyamlmerge eol=lf

*.a filter=lfs diff=lfs merge=lfs -text
*.mp3 filter=lfs diff=lfs merge=lfs -text
*.wav filter=lfs diff=lfs merge=lfs -text
*.aif filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.jpg filter=lfs diff=lfs merge=lfs -text
*.exr filter=lfs diff=lfs merge=lfs -text
*.fbx filter=lfs diff=lfs merge=lfs -text
*.FBX filter=lfs diff=lfs merge=lfs -text
*.rns filter=lfs diff=lfs merge=lfs -text
*.reason filter=lfs diff=lfs merge=lfs -text
*.lxo filter=lfs diff=lfs merge=lfs -text

যে আমার ঘূর্ণায়মান ফাইল তালিকা। যদি আপনি তালিকা না অতিরিক্ত বাইনারি ফাইল ব্যবহার করেন, তাদের যোগ করুন।

আমি yamlmerge ব্যবহার করার জন্য কনফিগার করা ফাইল আছে, আপনি সেট আপ করতে হবে। আপনি এখানে এটি সম্পর্কে পড়তে পারেন: http://docs.unity3d.com/Manual/SmartMerge.html


শুধুমাত্র সম্পদ এবং প্রকল্প সেটিংস ফোল্ডারগুলি গিট সংস্করণ নিয়ন্ত্রণের অধীনে হতে হবে।

আপনি এই মত একটি gitignore করতে পারেন।

[Ll]ibrary/
[Tt]emp/
[Oo]bj/

# Autogenerated VS/MD solution and project files
*.csproj
*.unityproj
*.sln
*.suo
*.userprefs

# Mac
.DS_Store
*.swp
*.swo

Thumbs.db
Thumbs.db.meta

.vs/

Edit -> Project Settings -> Editor

মেটা ফাইলগুলিতে সংস্করণ নিয়ন্ত্রণ সেট করুন। টেক্সট বাধ্য করার জন্য সম্পদ সিরিয়ালাইজেশন সেট করুন।

আমি এই আপনি চান কি মনে হয়।


জিআইটি কি?

জিটি একটি মুক্ত এবং ওপেন সোর্স বিতরণ সংস্করণ নিয়ন্ত্রণ ব্যবস্থা (এসসিএম) ২005 সালে লিনাস টরওয়াল্ডস (লিনাক্স ওএস প্রতিষ্ঠাতা) দ্বারা উন্নত। এটি গতি এবং দক্ষতা সঙ্গে ছোট ছোট প্রকল্প সব ছোট নিয়ন্ত্রণ করতে নির্মিত হয়। গুগল, ফেসবুক, মাইক্রোসফ্ট মত লিডিং কোম্পানি প্রতিদিন জিআইটি ব্যবহার করে।

আপনি যদি জিআইটি সম্পর্কে আরো জানতে চান তবে এই দ্রুত টিউটোরিয়ালটি পরীক্ষা করুন ,

প্রথমে আপনার Git পরিবেশ সেট আপ করুন তা নিশ্চিত করুন। আপনার স্থানীয় পরিবেশ এবং একটি গিট সংগ্রহস্থল উভয় সেট আপ করতে হবে (আমি Github.com পছন্দ করি)।

জিআইটি ক্লায়েন্ট অ্যাপ্লিকেশন ম্যাক / উইন্ডোজ

GIT GUI ক্লায়েন্ট অ্যাপ্লিকেশনের জন্য আমি আপনাকে Github.com এর সাথে যেতে পরামর্শ দিয়েছি,

GitHub হল বন্ধু, সহকর্মী, সহপাঠী এবং সম্পূর্ণ অপরিচিতদের সাথে কোড ভাগ করার জায়গা। পাঁচ মিলিয়নেরও বেশি মানুষ একসাথে আশ্চর্যজনক জিনিসগুলি তৈরি করতে গিথহাব ব্যবহার করে।

Unity3d সেটিংস

আপনি এই সেটিংস করতে হবে

সম্পাদনা → প্রকল্প সেটিংস → সম্পাদক → সংস্করণ নিয়ন্ত্রণ মোডে দৃশ্যমান মেটা ফাইলগুলিতে স্যুইচ করুন।

ইউনিটি → পছন্দসই → প্যাকেজ → রিপোজিটরিতে বাহ্যিক বিকল্প সক্ষম করুন

সম্পাদনা → প্রজেক্ট সেটিংস → এডিটর → অ্যাসেট সিরিয়ালাইজেশন মোডে ফোর্স পাঠ্যতে স্যুইচ করুন।

উত্স: 3D গেমস সোর্স কন্ট্রোলের সাহায্যে গিট ব্যবহার করা





version-control