আমি কীভাবে সিটলিঙ্কগুলি অনুসরণ করতে গিট পেতে পারি?


217

আমার সেরাটি কি শেল স্ক্রিপ্ট হতে চলেছে যা প্রতিলিপিগুলি প্রতিলিপিগুলির সাথে প্রতিস্থাপন করে, বা গিটকে সিমলিংক অনুসরণ করতে বলার অন্য কোনও উপায় আছে?

PS: আমি জানি এটি খুব নিরাপদ নয়, তবে আমি কেবল কয়েকটি নির্দিষ্ট ক্ষেত্রে এটি করতে চাই।


5
এরকম কোনও কিছুর জন্য হার্ড লিঙ্কগুলি ব্যবহার করার কোনও অসুবিধা আছে?
এহতেশ চৌধুরী

12
উইন্ডোজ With এর সাথে, "এমকিলিঙ্ক / ডি" (ডিরেক্টরি প্রতীকী লিঙ্ক) গিটের সাথে কাজ করে না, তবে "এম কে লিঙ্ক / জে" (জংশন) ভাল কাজ করে।
yoyo

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

1
@ এহতেশচৌধুরী আপনি ডিরেক্টরিগুলির জন্য কঠোর লিঙ্ক তৈরি করতে পারবেন না
গৌরব

উত্তর:


46

দ্রষ্টব্য: এই পরামর্শটি এখন গিট 1.6.1 থেকে মন্তব্য অনুযায়ী সেকেলে। গিট এইভাবে আচরণ করত এবং আর করে না।


গিট ডিফল্টরূপে সিমলিঙ্কগুলি অনুসরণ করার পরিবর্তে সংরক্ষণের চেষ্টা করে (সংক্ষিপ্ততার জন্য, এবং এটি সাধারণত লোকেরা যা চায়)।

যাইহোক, যখন সিমিলিংক ডিরেক্টরি হয় তখন আমি দুর্ঘটনাক্রমে এটি সিমলিংকের বাইরে ফাইলগুলি যুক্ত করতে সক্ষম করেছিলাম।

অর্থাৎ,

  /foo/
  /foo/baz
  /bar/foo --> /foo
  /bar/foo/baz

করেছে

 git add /bar/foo/baz

এটি চেষ্টা করার সময় এটি কাজ করতে উপস্থিত হয়েছিল। সেই আচরণটি তখন আমার দ্বারা অযাচিত ছিল, সুতরাং আমি আপনাকে এর বাইরে তথ্য দিতে পারি না।


72
725b06050a083474e240a2436121e0a80bb9f175 এবং 806d13b1ccdbdde4bbdfb96902791c4b7ed125f6 চালু যে পরিবর্তন বন্ধ আপনি সিমলিঙ্ক ডিরেক্টরি পরলোক ফাইল জোড়া করে, তাই এই Git এর সংস্করণে না করবে না কাজ যেহেতু 1.6.1
মার্ক Longair

1
it src / main / path / ConversSymlinkToDir মারাত্মক যোগ করুন: 'src / main / path / ConversSymlinkToDir' প্রতীকী লিঙ্কের বাইরে
ব্যবহারকারী 1767316

2
@ ব্যবহারকারী 1767316 পুরো জিনিসটি এবং মন্তব্যগুলি পড়ুন। এটি কাজ করত, এখন আর তা করে না। সফ্টওয়্যার পরিবর্তন হয়, কিন্তু স্ট্যাক-ওভারফ্লো গ্রহণযোগ্য উত্তরগুলি দেয় না। আমি পরিষ্কার করেছি যে এটি ইতিমধ্যে কাজ করে না। অন্য উত্তর দেখুন।
কেন্ট ফ্রেড্রিক

হ্যাঁ @ কেন্টফ্রেডেরিক তবে সঠিক ত্রুটি বার্তাটি সরিয়ে ফেলা তার সমস্যার সমাধানের জন্য ব্যবহারকারীর অনুসন্ধানকে সহায়তা করে down একদিকে আপনার উত্তরটি হুশিয়ারী দেওয়া ঠিক আছে, অন্যদিকে অতীতের চেয়ে এখনই কাজ করা উত্তর দেওয়া উচিত
ব্যবহারকারী 1767316

143

গিটে একটি সিমিলিঙ্কের মধ্যে ফাইলগুলি পেতে আমি কী যুক্ত করেছি (আমি একটি সিমলিংক ব্যবহার করি নি তবে):

sudo mount --bind SOURCEDIRECTORY TARGETDIRECTORY

গিট-পরিচালিত ডিরেক্টরিতে এই কমান্ডটি করুন। এটিতে মাউন্ট দেওয়ার TARGETDIRECTORYআগে তৈরি SOURCEDIRECTORYকরতে হবে।

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


8
সুডো দরকার না হলে খুব সুন্দর অ্যাপ্রোচ হবে।
MestreLion

13
এই বাঁধাইটিকে পূর্বাবস্থায় ফেরাতে, ব্যবহার করুন umount [mydir]। (আপনার দুর্দান্ত টিপের জন্য +1, @ ব্যবহারকারী 252400)
জেলিকেলকিট

10
এটি কেবল অধিবেশন চলাকালীনই কাজ করে। এটিকে "চিরন্তন" করার সর্বোত্তম উপায় কী?
অ্যাডোব

17
@ অ্যাডোব: এটিকে / etc / fstab তে রাখুন: / স্যুরসিডির / টার্গেটডির কোনও বাঁধাই নয়
আলেকজান্ডার গার্ডেন

8
sshfs sudo প্রয়োজন ছাড়াই এই ধরণের কৌশল অর্জন করতে পারে, এখানে।
পাইপব্রস

75

অন্য উপায়ে সিমলিংক তৈরি করবেন না কেন? মানে গিট সংগ্রহশালা থেকে অ্যাপ্লিকেশন ডিরেক্টরিতে লিঙ্ক না করে কেবল অন্য উপায়ে লিঙ্ক করুন।

উদাহরণস্বরূপ, ধরা যাক আমি ইনস্টল করা একটি অ্যাপ্লিকেশন সেটআপ করছি যাটির জন্য ~/applicationএকটি কনফিগারেশন ফাইল প্রয়োজন config.conf:

  • আমি config.confআমার গিট ভাণ্ডারে যুক্ত করছি, উদাহরণস্বরূপ, এ ~/repos/application/config.conf
  • তারপরে আমি ~/applicationচালিয়ে একটি সিমিলিংক তৈরি করি ln -s ~/repos/application/config.conf

এই পদ্ধতির সর্বদা কার্যকর নাও হতে পারে তবে এটি আমার পক্ষে এখনও পর্যন্ত ভালভাবে কাজ করেছে।


5
একমাত্র উপায় বলে মনে হচ্ছে, এবং এটি খুব খারাপ নয় ... আমি মনে করি আপনার বেশ একটি মার্জিত পদ্ধতির। গিট ফাইল নয় কন্টেন্ট ট্র্যাক করে। সুতরাং সমস্ত বিষয়বস্তু একসাথে রাখা এবং সেখান থেকে অন্য জায়গায় সিমলিংক করা অর্থপূর্ণ হয়ে
উঠেছে

12
আমার ক্ষেত্রে আমি একটি গিট রেপো থেকে অন্য গিটার রেপোতে একটি লিঙ্ক চেয়েছিলাম, তাই আমি উভয় জায়গাতেই ফাইলগুলি সম্পাদনা করতে পারি এবং তাদের নিজ নিজ দূরবর্তী স্থানে ফিরিয়ে আনতে পারি। উইন্ডোজ On-তে একটি জংশন ("এমকিলিঙ্ক / জে") কৌশলটি সম্পাদন করে।
yoyo

3
অবশ্যই. কখনও কখনও উত্তর কেবল সহজ।
বিবিডাব্লিউ এর আগে উইন্ডোজ

আপনি যদি উত্স এবং গন্তব্য উভয়ই চান? (কারণ উভয়ই আলাদা আলাদা কোডের সাথে সম্পর্কিত যা আপনি বিভিন্ন ভাণ্ডারে রাখতে চান)
ড্রিজিসি

1
প্রশ্নের উত্তর দেয় না :( আমি চাইছিলাম আমার সংগ্রহশালার কিছু অংশ আমার আইক্লাউডের সাথে সিঙ্ক করা হবে। দুর্ভাগ্যক্রমে, আইক্লাউড সিমলিংকগুলি অনুসরণ করে না, তাই আমি ভেবেছিলাম যে আমি গিট ফলো সিমলিংকগুলি তৈরি করতে পারি এবং আইক্লাউডে মূল ফাইলগুলি সঞ্চয় করতে পারি nobody প্রতিলিপি: \
জেরি গ্রিন

49

পরিবর্তে হার্ড লিঙ্কগুলি ব্যবহার করুন। এটি একটি নরম (প্রতীকী) লিঙ্ক থেকে পৃথক। সহ সমস্ত প্রোগ্রাম gitফাইলটিকে একটি নিয়মিত ফাইল হিসাবে বিবেচনা করবে। মনে রাখবেন যে, বিষয়বস্তু পরিবর্তন করে পরিবর্তন করা যাবে পারেন উত্স অথবা গন্তব্য।

ম্যাকোজে (10.13 হাই সিয়েরার আগে)

আপনার যদি ইতিমধ্যে গিট এবং এক্সকোড ইনস্টল করা থাকে তবে হার্ডলিঙ্কটি ইনস্টল করুনহার্ড লিঙ্কগুলি তৈরি করার জন্য এটি একটি মাইক্রোস্কোপিক সরঞ্জাম

হার্ড লিঙ্কটি তৈরি করতে, সহজভাবে:

hln source destination

ম্যাকোস হাই সিয়েরা আপডেট

অ্যাপল ফাইল সিস্টেম ডিরেক্টরি হার্ড লিঙ্ক সমর্থন করে?

ডিরেক্টরি হার্ড লিঙ্কগুলি অ্যাপল ফাইল সিস্টেম দ্বারা সমর্থিত নয়। আপনি যখন ম্যাকোজে এইচএফএস + থেকে এপিএফএস ভলিউম ফর্ম্যাটে রূপান্তর করেন তখন সমস্ত ডিরেক্টরি হার্ড লিঙ্কগুলি প্রতীকী লিঙ্ক বা উপাধিতে রূপান্তরিত হয়।

বিকাশকারী.এপল.কম এ এপিএফএস এফএকিউ থেকে

ভবিষ্যতের বিকল্পগুলির জন্য https://github.com/selkhateeb/hardlink/issues/31 অনুসরণ করুন ।

লিনাক্স এবং অন্যান্য ইউনিক্স স্বাদে

lnকমান্ড হার্ড লিঙ্ক করতে পারেন:

ln source destination

উইন্ডোজে (ভিস্তা, 7, 8,…)

কেউ উইন্ডোজে একটি জংশন তৈরি করতে এমকিঙ্কিং ব্যবহার করার পরামর্শ দিয়েছিলেন , তবে আমি এটি চেষ্টা করে দেখিনি:

mklink /j "source" "destination"

7
কেবল একটি নোট: এটি মূলত আমি যা খুঁজছিলাম, কিন্তু তখন আমি শিখেছি যে লিনাক্সে, একটি হার্ডলিঙ্ক দুর্ভাগ্যক্রমে ফাইল সিস্টেমের সীমানা অতিক্রম করতে পারে না (এটি আমার ব্যবহারের ক্ষেত্রে)।
sdaau

26
আপনি ডিরেক্টরিতে হার্ডলিঙ্ক করতে পারবেন না, করতে পারেন?
Nanne

1
ln source destinationওএস এক্সেও কাজ করে। এল ক্যাপিটনে পরীক্ষিত।
মাহদী দিবায়ে

7
@Nanne কোন, কিন্তু আপনি করতে পারেন: cp -al source destination। `-l এর অর্থ অনুলিপি না করে হার্ড লিঙ্ক ফাইলগুলি।
পাওলো

6
দুর্ভাগ্যক্রমে আপনি হার্ড-লিঙ্ক ডিরেক্টরিগুলি বা ফাইল সিস্টেমের সীমানা জুড়ে রাখতে পারবেন না। এটি এই সমাধানটি আমার জন্য দ্বিগুণ un
কনরাড রুডল্ফ

25

এটি একটি প্রাক-প্রতিশ্রুতিযুক্ত হুক যা সেই সূত্রগুলির বিষয়বস্তু সহ সূচকে থাকা সিমলিংক ব্লবকে প্রতিস্থাপন করে।

এটি রাখুন .git/hooks/pre-commitএবং কার্যকর করুন:

#!/bin/sh
# (replace "find ." with "find ./<path>" below, to work with only specific paths)

# (these lines are really all one line, on multiple lines for clarity)
# ...find symlinks which do not dereference to directories...
find . -type l -exec test '!' -d {} ';' -print -exec sh -c \
# ...remove the symlink blob, and add the content diff, to the index/cache
    'git rm --cached "$1"; diff -au /dev/null "$1" | git apply --cached -p1 -' \
# ...and call out to "sh".
    "process_links_to_nondir" {} ';'

# the end

মন্তব্য

আমরা পসিক্স যথাসম্ভব সুসংগত কার্যকারিতা ব্যবহার করি; তবে diff -aপসিক্স অনুগত নয়, সম্ভবত অন্যান্য জিনিসগুলির মধ্যে রয়েছে।

এই কোডটিতে কিছু ভুল / ত্রুটি থাকতে পারে, যদিও এটি কিছুটা পরীক্ষা করা হয়েছিল।


4
ডিরেক্টরি নয় ফাইলের জন্য প্রকৃতপক্ষে প্রশ্নের উত্তর দেওয়ার প্রয়াসটি দেখে এটি দুর্দান্ত। যাইহোক, নোট উপরে এখনও দেখাবে করবে typechangeমধ্যে git statusফাইল যা আসলে symlinks যদিও এখন Git জিনিষ তারা না জন্য।
ডেভিড ফ্রেজার

1
এর জন্য ধন্যবাদ; শুধু জানতে চেয়েছিলাম, কী process_links_to_nondir?
sdaau

@sdaau এটি নাম / argv[0]যা shপ্রক্রিয়াটির কমান্ড-নাম হিসাবে ব্যবহৃত হয় । (এটি অনুমান করার জন্য আমাকে খানিকটা চেষ্টা করলেন, যেহেতু এটি কোনটি আমি মনে করি না ☺😃)
আব্বাফাই

3
@ আব্বাফেই আপনি স্ক্রিপ্টটি উবুন্টুতে কাজ করতে (14.04) এটি পরিবর্তন করতে পারেন? এটা দেখাচ্ছে find: missing argument to -exec'। পাইপিং এবং সবকিছুকে একক লাইনে একত্রিত করার পরিবর্তে ধাপে ধাপে কমান্ডের প্রয়োগের প্রয়োজন হতে পারে।
খুরশিদ আলম

1
@ খুরশিদআলাম আমার পক্ষে কমান্ড লাইনের মধ্যে মন্তব্য করা লাইনগুলি সরিয়ে ফেলতে কাজ করেছে। তবে, typechangeহুকটি প্রত্যাশার মতো কাজ করে না (আমি @ ডেভিডফ্রেজারের মতো পাই, তবে লিঙ্কযুক্ত ফাইলটি আর মঞ্চস্থ হয় না বলে মনে হয়)
Scz

14

চালু MacOS(আমার মোজভে / 10.14, gitসংস্করণ ২.7.১) আছে, ব্যবহার করুন bindfs

brew install bindfs

cd /path/to/git_controlled_dir

mkdir local_copy_dir

bindfs </full/path/to/source_dir> </full/path/to/local_copy_dir>

এটি অন্যান্য মন্তব্যে ইঙ্গিত দেওয়া হয়েছে, তবে অন্য উত্তরে পরিষ্কারভাবে সরবরাহ করা হয়নি। আশা করি এটি কারও কিছুটা সময় সাশ্রয় করবে।


সমস্ত দল ম্যাক ওএসে চলে এমন দলগুলির জন্য দুর্দান্ত বলে মনে হয়, আমি মনে করি নীচে বর্ণিত হার্ড লিঙ্কগুলি উইন্ডোজ এবং লিনাক্সের জন্য কাজ করা উচিত।
ডেভিন জি রোড

এটি সহায়ক ছিল এবং আমি মনে করি ম্যাকোস-এ দরকারী-তবে-অনুপস্থিত সক্ষমতাটির সেরা সমাধান। তবে খেয়াল করুন যে আমি পেয়েছিলাম Failed to resolve... No such file or directoryত্রুটিগুলি যদি না কমান্ডের সাথে পুরো পথের নাম ব্যবহার করি bindfs
ইলেক্ট্রোম্যাগগট

ধন্যবাদ @ ইলেক্ট্রোম্যাগগোট। সম্পূর্ণ স্পষ্ট প্রয়োজনীয় আবশ্যক স্পষ্টকরণ
ijoseph

1
ম্যাকোস কাতালিনাতে দুর্দান্ত কাজ করে!
জেরি গ্রিন

13

আমি বেশ কিছুদিন ধরে সিমলিংকের বাইরেও ফাইল যুক্ত করতাম। এটি কোনও বিশেষ ব্যবস্থা না করে ঠিক কাজ করত। যেহেতু আমি গিট ১.6.১ এ আপডেট করেছি তাই এটি আর কাজ করে না।

এই কাজটি করতে আপনি গিট 1.6.0 এ স্যুইচ করতে পারবেন। আমি আশা করি যে গীতের ভবিষ্যতের সংস্করণে git-addএটি আবার সিমলিংকগুলি অনুসরণ করার অনুমতি দেওয়ার জন্য একটি পতাকা থাকবে ।


12

আমি এখানে প্রতিটি সমাধানকে পুরানো বা মূলের প্রয়োজন থেকে ক্লান্ত হয়ে পড়েছি, তাই আমি একটি LD_PRELOAD- ভিত্তিক সমাধান তৈরি করেছি (কেবলমাত্র লিনাক্স)।

এটি গিটের অভ্যন্তরীণ অংশে প্রবেশ করে, 'এটি কি একটি সিমলিংক?' ফাংশন, প্রতিলিঙ্কগুলি তাদের বিষয়বস্তু হিসাবে বিবেচনা করার অনুমতি দেয়। ডিফল্টরূপে, রেপোর বাইরের সমস্ত লিঙ্ক অন্তর্ভুক্ত থাকে; বিস্তারিত জানার জন্য লিঙ্কটি দেখুন।


LD_PRELOADগ্রন্থাগারের ফাংশনগুলিকে ওভাররাইড করতে খুব সৃজনশীল সমাধান !
iBug

হ্যাঁ, তবে এটি এখানে বিশদভাবে বর্ণনা করা উচিত। আপনি এটা করতে পারেন?
পিটার মর্টেনসেন

নিশ্চিত না কত বিস্তৃততা সাহায্য করবে; যতক্ষণ না আমি পুরো উত্স কোডটি কপিপাইস্ট করি, এই উত্তরটি সর্বদা সেই লিঙ্কের উপর নির্ভর করবে, যেখানে একটি রিডমিও পাওয়া যাবে। তবে হ্যাঁ, আমি অনুমান করি যে আমি রেডমিটির গুরুত্বপূর্ণ অংশগুলি পুনরুত্পাদন করতে পারি।
আলকারো

এটি ওএস এক্স (মোজভেভ 10.14.2) এ সংকলন করে না। 'Strchrnul' (আপনার অর্থ 'strchr'??) এবং '__xstat64' 'এর একটি সম্পর্কে অভিযোগ করে চারটি ত্রুটি পান (আপনি কি' __lxstat64 'বলতে চাইছেন?)। অবশেষে আমি একটি "অসম্পূর্ণ প্রকারের 'ডিরেক্টরেট 64' ত্রুটিতে একটি সদস্যের অ্যাক্সেস পেয়েছি। আমি যদি "মেক", "ওপিটি = 1" বা "sh ইনস্টল.sh" ব্যবহার করি তবে নির্বিশেষে ঘটে যায়।
এরিক ভ্যাল্যান্ড

@ এরিকভেল্যান্ড আমি কিছুটা চেষ্টা করেছি, তবে দেখে মনে হচ্ছে ওএসএক্স এলডিপ্রেলওড সমর্থন করে না, অনুরূপ কিছু নয়। বিভিন্ন দস্তাবেজ বিভিন্ন জিনিস প্রস্তাব দেয় তবে সেগুলি বেশ কয়েক বছর পুরনো এবং অ্যাপল হ্রাসকারী জিনিস পছন্দ করে; আমি তাদের কারও কাজ করতে পারিনি। দুঃখিত।
আলকারো

6

গীত সঙ্গে 2.3.2+ (চতুর্থাংশ 1 2015), সেখানে অন্য একজন যদি যেখানে গীত হবে না আর সিমবলিক লিঙ্ক অনুসরণ করুন: দেখুন e0d201b কমিট দ্বারা junio সি Hamano ( gitster) (প্রধান গীত রক্ষণাবেক্ষণকারী)

apply: প্রতীকী লিঙ্কের বাইরে কোনও ফাইল স্পর্শ করবেন না

যেহেতু গিট প্রতীকী লিঙ্কগুলি প্রতীকী লিঙ্ক হিসাবে চিহ্নিত করে, একটি পথ যেটির প্রধান অংশে একটি প্রতীকী লিঙ্ক রয়েছে (যেমন path/to/dir/file, path/to/dirঅন্য কোথাও যেখানে প্রতীকী লিঙ্ক রয়েছে, এটি কার্যত গাছের অভ্যন্তরে বা বাইরে থাকুক) কখনই এমন প্যাচটিতে উপস্থিত হতে পারে না যা বৈধভাবে প্রয়োগ হয় , যদি না একই প্যাচটি প্রথমে প্রতীকী লিঙ্কটি সরিয়ে দেয় সেখানে ডিরেক্টরি তৈরি করার অনুমতি দেয়।

এই জাতীয় প্যাচ সনাক্ত করুন এবং প্রত্যাখ্যান করুন।

একইভাবে, যখন কোনও ইনপুট একটি প্রতীকী লিঙ্ক path/to/dirতৈরি করে এবং তারপরে একটি ফাইল তৈরি করে path/to/dir/file, আমাদের path/to/dirফাইল সিস্টেমে আসলে প্রতীকী লিঙ্ক তৈরি না করে এটিকে ত্রুটি হিসাবে চিহ্নিত করতে হবে ।

পরিবর্তে, ইনপুটটির কোনও প্যাচের জন্য যা কোনও পাথ ছেড়ে দেয় (অর্থাত্ একটি মুছে ফেলা না হয়), ফলস্বরূপ গাছের বিপরীতে আমরা সমস্ত নেতৃস্থানীয় পাথগুলি পরীক্ষা করি যা প্যাচটি ইনপুটটির সমস্ত প্যাচগুলি পরীক্ষা করে এবং তারপরে প্যাচের লক্ষ্য নির্ধারণ করে would অ্যাপ্লিকেশন (হয় সূচক বা কার্যকারী গাছ)।

এইভাবে, আমরা:

  • একই সময়ে প্রতীকী লিঙ্ক path/to/dirএবং একটি ফাইল যুক্ত করতে কোনও দুষ্টুমি বা ভুল ধরা path/to/dir/file,
  • একটি বৈধ প্যাচ অনুমতি দেওয়ার সময় যা একটি প্রতীকী সরিয়ে দেয় link path/to/dirএবং তারপরে একটি ফাইল যুক্ত করে path/to/dir/file

তার অর্থ, সেই ক্ষেত্রে ত্রুটি বার্তাটি জেনেরিকের মতো হবে না "%s: patch does not apply", তবে আরও নির্দিষ্ট একটি:

affected file '%s' is beyond a symbolic link

4

হুঁ, mount --bindডারউইনের উপর কাজ করবে বলে মনে হচ্ছে না।

কারও কি এমন কৌশল আছে যা আছে?

[সম্পাদিত]

ঠিক আছে, আমি খুঁজে পেয়েছি ম্যাক ওএস এক্স এর উত্তরটি একটি হার্ডলিঙ্ক করা। যে এপিআই এর মাধ্যমে উন্মুক্ত হয় না ln, সুতরাং আপনার এটি করতে আপনার নিজের ক্ষুদ্র প্রোগ্রামটি ব্যবহার করতে হবে। এখানে সেই প্রোগ্রামটির একটি লিঙ্ক দেওয়া হল:

ম্যাক ওএস এক্সে ডিরেক্টরি হার্ড লিঙ্ক তৈরি করা হচ্ছে

উপভোগ করুন!


1
যদি এই হার্ডলিঙ্কের গন্তব্য ডিরেক্টরিটি অন্য গিট রেপোর উপ-ডিরেক্টরি হয় তবে এটি বিশৃঙ্খলা। হার্ডলিঙ্কে গিট অপারেশন করা এই অন্যান্য গিট রেপোর ক্ষেত্রে প্রযোজ্য। আপনি কি করছেন তা কেবল দুবার পরীক্ষা করে দেখুন।
ইগেল

4
পোর্ট ব্যবহার করে ইনস্টল করা যেতে পারে এমন কোড. google.com/p/bindfs এর মাধ্যমে এটি করা সম্ভব ।
কিট সান্দে

0

আমি গিট 1.5.4.3 ব্যবহার করছি এবং এটিতে পাস করা স্লিমিংকটি অনুসরণ করছে যদি এটির পিছনে স্ল্যাশ থাকে। যেমন

# Adds the symlink itself
$ git add symlink

# Follows symlink and adds the denoted directory's contents
$ git add symlink/

5
কমপক্ষে ওএসএক্স-এ এর ফলস্বরূপfatal: 'src/' is beyond a symbolic link
ড্যান রোজেনস্টার্ক

2
@ মারক লংগায়ারের ব্যাখ্যা অনুসারে, এটি কেবল 1.6.1 গিট পর্যন্ত কাজ করেছে
মস্তেরলিয়ন

এটা আমার সমস্যা ছিল, ধন্যবাদ!
মাইক কিউ

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.