বাইনারি ফাইলগুলির জন্য msysgit থেকে rsync ব্যবহার করা


22

আমার কাছে তিনটি উইন্ডোজ বাক্স রয়েছে যা আমার নেটওয়ার্কে একটি লিনাক্স বাক্সের সাথে বিভিন্নভাবে সংযুক্ত রয়েছে (যার নেটওয়ার্কে স্থানীয়, একটি ল্যাপটপ এবং স্থানীয় হতে পারে বা নাও হতে পারে, এবং অন্যটি আমার ওয়ার্কের ডেস্কটপ)। আমি বর্তমানে আমার বেশিরভাগ জিনিসগুলি বাক্সগুলির মধ্যে সিঙ্ক্রোনাইজ করার জন্য গিট ব্যবহার করছি (সার্ভার হিসাবে লিনাক্স বাক্সটি ব্যবহার করে) এবং এটি চ্যাম্পের মতো কাজ করে।

এখন, তবে আমি বাক্সগুলির মধ্যে দক্ষতার সাথে সিঙ্ক্রোনাইজ করতে আমার এমপি 3 সংগ্রহ (12 জিগ) যুক্ত করতে চাই। আমি প্রথমে ভেবেছিলাম আমি এর জন্য গিট ব্যবহার করতে পারি, তবে দেখে মনে হচ্ছে আরএসসিএনসি একটি ভাল পছন্দ হবে যেহেতু সত্যই আমার সমস্ত allতিহাসিক জিনিসগুলির প্রয়োজন নেই। যেহেতু আমার সমস্ত বিদ্যমান ম্যানেজমেন্ট স্ক্রিপ্টগুলি গিট ব্যাশের অধীনে চলছে (সাইগউইনের পরিবর্তে), আমি এটি গিট ব্যাশ থেকে ব্যবহার করতে সক্ষম হতে চাই (উইন্ডোটির শিরোনাম বারে এমআংডাব্লু 32 এটিই বলে)। আমি কি কেবল এটি সাইগউইনে ডাউনলোড করে এটি অনুলিপি করতে পারি বা এটির কাছে যাওয়ার আরও ভাল কোনও উপায় আছে? লিনাক্স বাক্সটি উবুন্টু সার্ভার সংস্করণের সর্বশেষতম সংস্করণটি চলছে - এতে আরএসসিএনকে সঠিকভাবে কাজ করতে সক্ষম করার জন্য আমার কিছু করার দরকার নেই?

আমি বুঝতে পারি যে আমি এটি প্রয়োজনের তুলনায় কিছুটা শক্ত উপায়ে করছি, তবে আমি এটিকে আমার কমান্ডলাইন দক্ষতার উন্নতি করার অনুশীলন হিসাবে ব্যবহার করছি। কোন পরামর্শ?


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

উত্তর:


25

এখন পর্যন্ত (9/7/2017) উইন্ডোজ এসডিকে গিট চালানো ছাড়াও উইন্ডোজের পরিবেশের জন্য গিটের পক্ষে ম্যানুয়ালি আরএসসিএনসি সমর্থন যুক্ত করা অত্যন্ত সহজ।

আমি এই পোস্টটি জুড়ে হোঁচট খেয়েছি এবং ভাবি নি যে সমস্ত বিকল্প দেওয়া সত্ত্বেও এটি এত সহজ হতে পারে তবে এটি সত্যই। আপনাকে যা করতে হবে তা হ'ল এমএসওয়াইএস 2 প্যাকেজ সংগ্রহস্থল থেকে আরএসইএনসি প্যাকেজটি ধরে নেওয়া এবং এতে rsync.exeফাইলটি বের করা C:\Program Files\Git\usr\bin। এক এবং সম্পন্ন। এটা কাজ করে।

আপনার যদি rsync.exeআরএসআইএনসি প্যাকেজটি (যেটি tar.xzফর্ম্যাটে রয়েছে) থেকে আহরণের সাহায্যের প্রয়োজন হয় তবে আপনি হয় 7zip এর মতো একটি সংক্ষেপণ ইউটিলিটি ব্যবহার করতে পারেন বা উইন্ডো ব্যাশ পরিবেশের মতো গিটের মধ্যে সরাসরি এটি করতে পারেন:

cd /c/downloaded_location
tar -xvf rsync.pkg.tar.xz usr/bin/rsync.exe --strip-components=2

এটি আপনাকে rsync.exeডাউনলোড করা স্থানে ফাইল দেয় (সেই অনুযায়ী প্যাকেজের নাম সামঞ্জস্য করুন)। উইন্ডোজ অনুমতি সংক্রান্ত সমস্যার আলোকে আমি C:\Program Files\Git\usr\binফোল্ডারে এক্সেক পাওয়ার বিষয়ে নির্দিষ্ট আদেশ দেওয়ার চেষ্টা করব না । আপনি এটি এক্সপ্লোরার জিইউআইয়ের মাধ্যমে বা একটি উন্নত কমান্ড লাইন ইউটিলিটির মাধ্যমে অনুলিপি করতে পারেন (এবং হ্যাঁ, প্রোগ্রাম ফাইল ফোল্ডারগুলিতে কোনও কিছু অনুলিপি করতে প্রশাসকের স্তরের অনুমতি প্রয়োজন হবে)।

আপনি যদি এসএসএস-এর মাধ্যমে আরএসসিএন-এর সাথে পেজেন্ট প্রমাণীকরণও ব্যবহার করতে চান তবে এসএস-পেজেন্ট বাইনারিটি ইতিমধ্যে উইন্ডোজের জন্য গিটে ইনস্টলড রয়েছে এবং আপনাকে যা করতে হবে তা আপনার ~/.bashrcবা ~/.bash_profileফাইলে একটি সামান্য বিট যোগ করতে হবে ( এসএসএস-পেজেন্ট ব্যবহার বিভাগ এবং গিটের জন্য দেখুন উইন্ডোজ উইকি )। উইন্ডোজ পরিবেশের জন্য গিটের সাথে ব্যবহারের জন্য আমি এটি বিশেষভাবে সংশোধন করেছি এবং হারিয়ে যাওয়া সকেট ফাইলটির জন্য কিছু সনাক্তকরণের মাধ্যমে এটি বাড়িয়েছি:

# ssh-pageant allows use of the PuTTY authentication agent (Pageant)
SSH_PAGEANT="$(command -v ssh-pageant)"
if [ -S "$SSH_AUTH_SOCK" ]; then
  PAGEANT_SOCK=$SSH_AUTH_SOCK
else
  PAGEANT_SOCK=${TEMP:-/tmp}/.ssh-pageant-$USERNAME
fi
if [ -x "$SSH_PAGEANT" ]; then
  eval $("$SSH_PAGEANT" -qra "$PAGEANT_SOCK")
fi
unset SSH_PAGEANT
unset PAGEANT_SOCK

অন্যান্য ইউটিলিটিগুলি ম্যানুয়ালি এগুলি ইনস্টল করে কীভাবে কাজ করতে পারে বা না পারে তার সাথে আমি কথা বলতে পারি না, তবে আরএসএনসি ঠিক কাজ করে বলে মনে হচ্ছে। আশা করি যে রেপো থাকবে এবং আপডেট হতে থাকবে - আমি তাই মনে করি কারণ এটি অফিসিয়াল এমএসওয়াইএস 2 সাইটে হোস্ট করা হয়েছে।


1
ধন্যবাদ স্যার, ডাউনলোড করা এবং এটি কাজ করে .. কে জানত ...
pscheit

সমস্যা। সেখানে নেই rsync.exeশুধুমাত্র rsync বিভিন্ন সংস্করণ .pkg.tar.xz ফরম্যাটের। যে ঠিক আছে হতে পারে, ছাড়া আমি ইনস্টল করা যাবে না apt-get install xz-utils( sudo apt-get install xz-utils) কারণ আমি তন্ন তন্ন ইনস্টল করতে পারেন sudoবা apt-getউইন্ডোজ জন্য Git ব্যাশ থেকে :-( এবং এইভাবে এইভাবে ইনস্টল করা যাবে না xz-utils। এই সমস্যা এড়ানোর কোনো উপায় আছে কি? সেখানে একটি নতুন লিংক আমি কোথায় পেতে পারেন rsync.exe, অথবা কোনওভাবেই আমি এই .xz ফাইলটি সঙ্কুচিত করতে গিট বাশকে পেতে পারি?
শেরিলহোমান

প্রকৃতপক্ষে, এটি আরও অনুমতির সমস্যা বলে মনে হচ্ছে। যখন আমি tar -xf rsync-3.1.3-1-x86_64.pkg.tar.xz, আমি জানায় বার্তা একটি গুচ্ছ পাবেন: Cannot open: Permission denied, Cannot mkdir: Permission denied, Cannot mkdir: No such file or directoryএবং Cannot open: No such file or directoryবিভিন্ন ফাইল / ডিরেক্টরি জন্য। সম্ভবত গিট বাশ ইতিমধ্যে জানে কিভাবে xzফাইলগুলি সঙ্কুচিত করতে হয়? কিন্তু অনুমোদনের বি / ই করতে পারবেন না? আমি ব্যবহার বা ইনস্টল করতে পারি না sudo। গিট বাশকে
শেরিলহোমান

ধরে নিই যে আপনি আপনার ডাউনলোড ফোল্ডারে টার.এক্সজেড ফাইলটি ডাউনলোড করেছেন, আপনি এটি ব্যবহার করে এটি গিট বাশ থেকে আনপ্যাক করতে পারেন:cd / && tar Jxvf /c/Users/$USR/Downloads/rsync-3.1.3-1-x86_64.pkg.tar.xz
হ্যান্সফন

@ শেরিলহোমান আপনাকে প্যাকেজ ফাইল থেকে ম্যানুয়ালি এক্সি বের করতে হবে। C:\Program Files\Git\usr\binফোল্ডারে কেবল এক্সিকে বাদ দেওয়া ছাড়া আর কোনও "ইনস্টলেশন" দরকার নেই ।
Nextgentech

7

আমি জানি প্রশ্নটি "এমএসওয়াইএসের জন্য আরএসইএনসি ব্যবহার করা" নয়, তবে আমি মনে করি এটি উল্লেখ প্রাসঙ্গিক:

"মিনজিডাব্লু শেল" (পূর্বে "এমএসওয়াইএস (বেসিক সিস্টেম)" নামে পরিচিত) এর আরএসসিএন আছে। আমি যতটা সম্ভব শেল / সিস্টেমটি ব্যবহার করছি যতক্ষণ না এটি সাইগউইনের চেয়ে অনেক ছোট। (এই দিনগুলিতে আমি সম্ভবত একমাত্র ব্যক্তি যা ফাইলের আকারগুলির যত্নশীল।

"উইন্ডোজ উইন্ডোজ" / "গিট ব্যাশ" সহজেই আরএসসিএনকে যুক্ত করতে পারে কারণ এটি মিনিজিডব্লিউ / এমএসওয়াইএস এর উপর ভিত্তি করে এবং এটি আগে মেলিং তালিকায় উল্লেখ করা হয়েছিল।

দ্রষ্টব্য! যদি আপনার মিনজিডাব্লু শেলটির আরএসসিএন না থাকে তবে এটি যুক্ত করতে কেবল "মিংডাব্লু-get ইনস্টল এমএসএসইএসসিএনসি" চালান।

২৫ শে মার্চ ২০১ 2016 আপডেট হয়েছে:

উইন্ডোজের গিটটি এখন এমএসওয়াইএস 2 ব্যবহার করে। এবং এমএসওয়াইএস 2 প্যাকেজ ইনস্টল করতে "মিংডব্লু-গেট" নয়, "প্যাকম্যান" ব্যবহার করে। দুর্ভাগ্যক্রমে, "উইন্ডোজের জন্য উইন্ডো" তে প্যাকম্যান অন্তর্ভুক্ত নেই ... দুটি বিকল্প রয়েছে:

  1. উইন্ডোজ এসডিকে গিট ইনস্টল করুন (এতে প্যাকম্যান অন্তর্ভুক্ত রয়েছে)।
  2. এমএসওয়াইএস 2 এর ভিতরে গিট ইনস্টল করুন।

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

দ্রষ্টব্য! আমি এমএসওয়াইএস 2 / প্যাকম্যানের সাথে খুব বেশি খেলিনি, তবে এটি খুব আশাব্যঞ্জক বলে মনে হচ্ছে।

আগস্ট 2019 এর 7 তম আপডেট হয়েছে:

আপনি যদি গিট ফর উইন্ডোজ (গিট ব্যাশ) ব্যবহার করছেন তবে উপরের উত্তরে বর্ণিত যেমন এমএসওয়াইএস 2 প্যাকেজ সংগ্রহস্থল থেকে আরএসসিএন প্যাকেজটি গ্রহন করা আরও ভাল ।


দুঃখের সাথে, গিত বাশে:$ mingw-get bash: mingw-get: command not found
হেন্ডি ইরওয়ান

হ্যাঁ, এটি কিছুটা দুঃখজনক। উপরে আমার আপডেট হওয়া উত্তরটি দেখুন - এখনও দুঃখজনক, তবে পরিস্থিতির উন্নতি হয়েছে।
হানসফন

আমি দ্বিতীয় বিকল্পের জন্য গিয়েছিলাম এবং আমি একটি ২.১17 গিগাবাইট ফোল্ডারটি দিয়ে শেষ করেছি, তবে সমস্ত কিছুই কবজির মতো কাজ করে। আমি ব্যবহার করে আরএসসিএনসি ইনস্টল করেছি pacman -S rsync। অতীতে আমি সাইগউইন ব্যবহার করেছিলাম তবে আমার মনে হয় এমএসওয়াইএস 2 দুর্দান্ত,
এডেনশো

এই উত্তরে তালিকাভুক্ত বাগ রিপোর্টটি তখন থেকে "অনুপযুক্ত" হিসাবে বন্ধ করা হয়েছে - তবে আমি উইন্ডোজের জন্য গিটের সাথে আরএসসিএনসি অন্তর্ভুক্ত করার জন্য একটি অনুরোধ তৈরি করেছি
স্কট স্টিভেন্স

বিকল্প 1 বা বিকল্প 2 কীভাবে করবেন তার কোনও লিঙ্ক? আমি মনে করি আমার উইন্ডোজ এসডিকে গিট আছে। জানিনা। তবে ধরে নিচ্ছি আমি করছি, নাকি পাচ্ছি .. তাহলে কি? যদি তা না হয় তবে এমএসওয়াইএস 2 এর ভিতরে গিট ইনস্টল করার অর্থ কী তা আমার কোনও ধারণা নেই। তার অর্থ কি আমার আমার বর্তমান গিট ইনস্টলটি মুছতে হবে। আমি যদি এমন কিছু করি তবে সেটিংস বা কার্যকারিতার মতো আমি কোনও কিছু ছেড়ে দেব? না লিঙ্কগুলি কি ভাঙবে?
শেরিলহোমান

2

আমি ধরে নিচ্ছি git bashআপনার দ্বারা সত্যই বোঝানো হচ্ছে msysgit, "উইন্ডোজের জন্য গিট" aka শুরু মেনু বিকল্পটি git bash, যা আপনার ব্যবহৃত নামটি ব্যাখ্যা করে ..

প্রথমত, আপনি এখানে বিকল্প হিসাবে গিটকে বরখাস্ত করার ক্ষেত্রে সঠিক। গিটটি যে কাজগুলি ভাল করে না তার মধ্যে একটি হ'ল বাইনারি ফাইলগুলি পরিচালনা করা - এবং আপনি একটি বিশাল, ফুলে যাওয়া সংগ্রহস্থলটি শেষ করবেন। অতিরিক্ত হিসাবে, যেহেতু আপনি পরিবর্তনগুলি পরিচালনা করছেন না, তাই গিটের ওভারহেড ব্যবহার আমাকে ওভারকিল হিসাবে আঘাত করে।

দ্বিতীয়ত, আপনি যে প্রশ্নটি জিজ্ঞাসা করছেন এটি হ'ল, "আমি কি এমএসসিগিত / উইন্ডোজ থেকে আরএসসিএনসি ব্যবহার করতে পারি?" সংক্ষিপ্ত উত্তরটি, বাক্সের বাইরে নয়। msysgitফর্ম এবং ফাংশনের দিক থেকে উইন্ডোজ কমান্ড লাইনটি আসলেই। বলা হচ্ছে, আপনার কাছে দুটি বিকল্প রয়েছে: আপনার উইন্ডোজ মেশিনে আরএসসিএন সক্ষম করতে একটি তৃতীয় পক্ষের সরঞ্জাম ডাউনলোড করুন ( স্ট্রাক ওভারফ্লো: উইন্ডোজের জন্য Rsync), বা কেবল সাইগউইন ব্যবহার করুন। সত্যই, তাদের একই ফলাফল রয়েছে - সুতরাং কোনটি আরও ভাল কাজ করবে তা সিদ্ধান্ত নেওয়া আপনার পক্ষে।


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

এটি সহজভাবে সম্ভব নয়। সাইগউইন একটি জিএনইউ-ভিত্তিক পরিবেশ স্থাপন করে, লিনাক্সের মতো লাইব্রেরি, কনফিগারেশন ইত্যাদিসহ msysgit। উইন্ডোজ কমান্ড লাইন, যা উইন্ডোজ এক্সিকিউটেবলকে সমর্থন করে। সম্ভবত যা ঘটছে তা হ'ল এটি এক্সিকিউটেবল হিসাবে ফাইল সনাক্ত করতে সক্ষম হয় না। সহজ কথায় বলতে গেলে, সাইগউইন এবং এমএসএসজিট এমনকি দূরবর্তীভাবে সুসংগত নয়।
অ্যান্ড্রু এম

এটি সম্ভবত তবে হ্যাকি। অনুলিপি cygiconv-2.dll, cygwin1.dllএবং rsync.exeCygwin থেকে আপনার msysgit পথের দিকে। অন্য কিছু নয় (বিশেষত ssh.exe নয়)। সমস্যাটি সাধারণত গিট এসএসএইচ এবং সাইগউইন / আরএসএনসিএসএসএইচ-এর মধ্যে একটি বেমানান। একই সংস্করণ রাখার চেষ্টা করুন। আপনার সাথে এখনও সমস্যা থাকবে /cygdrive/তবে এগুলি ছাড়া আমার কোনও সমাধান নেই cd
ওয়ার্নাইট

0

এটির মূল্যের জন্য, আমি বিন পাথে নামার সময় এমএসজিগিতে কাজ করতে সিডব্লিউএনসিঙ্ক পেতে একইরকম সমস্যা হচ্ছিলাম , তবে বিভিন্ন বিষয় প্রচুর চেষ্টা করার পরে অবশেষে দেখা গেল যে উইন্ডোজটির জন্য গীতের সর্বশেষ সংস্করণ (২.১০.২) এ কেবল আপডেট করা ঠিক হয়েছে সমস্যা.


cwRsync $ 19 বছর / itefix.net/cwrsync
SherylHohman

0

একচেটিয়া সিঙ্কের জন্য rsync একটি দুর্দান্ত। আপনি হয় সাইগউইনের অধীনে আরএসএনসি চালাতে পারেন, অথবা উইন্ডোজের জন্য ডেল্টাকপিও রয়েছে

আপনি যদি দ্বি নির্দেশমূলক সিঙ্ক করতে চান তবে একযোগে দেখুন

ক্রস প্ল্যাটফর্ম ডিরেক্টরি সিঙ্ক্রোনাইজেশন সরঞ্জামের জন্য, বেশিরভাগ প্ল্যাটফর্মগুলিতে চলমান সিঙ্কিং রয়েছে


একত্রীকরণ দুর্দান্ত, তবে আপনাকে এটি সার্ভারে ইনস্টল করতে হবে - যেমন 90% সার্ভারগুলি আরএসসিএনসি প্রস্তুত। এবং
ওপিসিআরসিএনসি

ওপি আরএসসিএনসি সম্পর্কে জিজ্ঞাসা করেছিল, তবে ওপি যা অর্জন করতে চেয়েছিল তা হ'ল "বাক্সগুলির মধ্যে দক্ষতার সাথে সুসংহতকরণ করা", এবং একযোগে বেশিরভাগ রেপোতে পাওয়া যায় ...
shouldbeq931

দেখে মনে হচ্ছে ডেল্টা কপি উইন্ডোজ 10 এর জন্য উপলব্ধ নয় কি আর আর রক্ষণাবেক্ষণ করা যায়?
শেরিলহোমান

ইউনিসন উইন্ডোজ 10 এ কাজ করে কিনা তা বলা মুশকিল। এই সফ্টওয়্যারটি উইন্ডোজ ওএসের কোন সংস্করণ সমর্থন করে সে সম্পর্কে কোনও উল্লেখ নেই। আবার বেশ কয়েকটি সমস্যা রয়েছে: উইন্ডোজ 10 github.com/bcpierce00/unison/…
শেরিলহোমান

এই দিনগুলিকে সিঙ্কে ডিরেক্টরি কাঠামো রাখার জন্য ক্রস প্ল্যাটফর্মের সরঞ্জাম হিসাবে, আমি সিঙ্কিং সিঙ্কিংথন.টাকে তবে ২০১১-এর মধ্যে প্রস্তাব দেব ....
shouldbeq931
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.