Answers:
හෑෂ් හරහා ඔබට ශාඛාව නිර්මාණය කළ හැකිය:
git branch branchname <sha1-of-commit>
හෝ සංකේතාත්මක යොමු කිරීමක් භාවිතා කිරීමෙන්:
git branch branchname HEAD~3
ශාඛාව නිර්මාණය කිරීමේදී එය පරීක්ෂා කර බැලීමට භාවිතා කරන්න
git checkout -b branchname <sha1-of-commit or HEAD~3>
git push origin BRANCH_NAME
<sha1-of-commit>
ධාවනයෙන් ශාඛාවක් ආරම්භ කිරීමට git checkout -b <name-of-branch> <sha1-of-commit>
නමුත් ශාඛාව දැනටමත් තිබේ නම්git checkout -B <name-of-branch> <sha1-of-commit>
Github.com හි මෙය කිරීමට:
මැජික් git reset මගින් කළ හැකිය .
නව ශාඛාවක් සාදා එයට මාරුවන්න (එබැවින් ඔබගේ නවතම කොමිස් සියල්ලම මෙහි ගබඩා කර ඇත)
git checkout -b your_new_branch
ඔබගේ පෙර වැඩකරන ශාඛාව වෙත ආපසු යන්න (එය ප්රධාන යැයි උපකල්පනය කරන්න)
git checkout master
නවතම x කොමිස් ඉවත් කරන්න, මාස්ටර් පිරිසිදුව තබා ගන්න
git reset --hard HEAD~x # in your case, x = 3
මේ මොහොතේ සිට, නවතම x කොමිස් සියල්ලම ඇත්තේ නව ශාඛාව තුළ පමණි, ඔබේ පෙර වැඩකරන ශාඛාවේ (මාස්ටර්) තවදුරටත් නොවේ.
git reset --hard
ඔබ දැනටමත් සම්භවය සඳහා වූ කැපවීම තල්ලු කර ඇත්නම් එය හොඳ අදහසක් නොවන බව අමතක නොකරන්න ...
git push --force
මීට පෙර ශාඛාව තල්ලු කර ඇත්නම්
කල්තියාම ශාඛා කිරීමට අවශ්ය කුමන කැපවීමදැයි ඔබට විශ්වාස නැත්නම්, ඔබට කොමිස් පරීක්ෂා කර බලා ඒවායේ කේතය පරීක්ෂා කළ හැකිය (මූලාශ්රය, සම්පාදනය, පරීක්ෂණය බලන්න)
git checkout <sha1-of-commit>
ඔබට ශාඛාවක් ලබා ගැනීමට අවශ්ය වූ කැපවීම ඔබ සොයාගත් පසු, එය සාමාන්ය ආකාරයකින් ශාඛාවක් නිර්මාණය කිරීමෙන් පමණක් (එනම් පළමුව ස්වාමියා වෙත ආපසු නොයා) කළ හැකිය.
git checkout -b <branch_name>
git checkout -b <branch-name> <sha1-of-commit>
git branch branchname <sha1-of-commit>
" (පිළිගත් පිළිතුරෙන්) වෙනස් වන්නේ කෙසේද?
git checkout -b
නව ශාඛාවක් නිර්මාණය කිරීමට භාවිතා කරමි .
ඔබගේ ගිතුබ් ගබඩාවේ එය කිරීමට ඉක්මන් ක්රමයක් පහත පරිදි වේ:
සරලව ධාවනය කරන්න:
git checkout -b branch-name <commit>
උදාහරණයක් වශයෙන් :
git checkout -b import/january-2019 1d0fa4fa9ea961182114b63976482e634a8067b8
මෙම checkout
පරාමිතිය සමඟ විධානය -b
නව ශාඛා නිර්මාණය වනු ඇත හා එය ඔබ කෙරෙහි මාරු වනු ඇත
git fetch
සහ git branch
පර්යන්තය භාවිතා විධානය ඔබේ ව්යාපෘතියේ ෆෝල්ඩරය මත, පසුව ලක්ෂණය ශාඛා පවතී නම් මෙම නඩුව නම් එසේ නම් ඔව්, ඇත්තෙන්ම ඔබ මකා ශාඛා සිට ශාඛා නිර්මාණය කිරීමට හැකි දැක ගත, පරීක්ෂා කරන්න, ඔබ ද ශාඛා මකා නඩුව තුළ යා හැකි ශාඛාව නැති වී ඇත
විශාල සම්බන්ධිත ප්රශ්නයක් නම්: --help
git විකල්පය භාවිතා කරමින් ඔබ මෙය හඳුනා ගන්නේ කෙසේද ? අපි මෙය උත්සාහ කරමු:
git branch --help
මෙම ප්රතිදානය අපට පෙනේ:
NAME
git-branch - List, create, or delete branches
SYNOPSIS
git branch [--color[=<when>] | --no-color] [-r | -a]
[--list] [-v [--abbrev=<length> | --no-abbrev]]
[--column[=<options>] | --no-column]
[(--merged | --no-merged | --contains) [<commit>]] [--sort=<key>]
[--points-at <object>] [<pattern>...]
git branch [--set-upstream | --track | --no-track] [-l] [-f] <branchname> [<start-point>]
git branch (--set-upstream-to=<upstream> | -u <upstream>) [<branchname>]
git branch --unset-upstream [<branchname>]
git branch (-m | -M) [<oldbranch>] <newbranch>
git branch (-d | -D) [-r] <branchname>...
git branch --edit-description [<branchname>]
ගොබ්ල්ඩෙගුක්.
"බැඳීම" යන වචනය සඳහා පසු පෙළ හරහා සොයන්න. අපට මෙය හමු වේ:
<start-point>
The new branch head will point to this commit. It may be given as a branch name, a
commit-id, or a tag. If this option is omitted, the current HEAD will be used instead.
අපි කොහේ හරි යනවා!
දැන්, ගොබ්ල්ඩෙගුක් හි මෙම රේඛාව කෙරෙහි අවධානය යොමු කරන්න:
git branch [--set-upstream | --track | --no-track] [-l] [-f] <branchname> [<start-point>]
මේ සඳහා ense නීභවනය කරන්න:
git branch <branchname> [<start-point>]
සහ කර ඇත.
සූර්යග්රහණයෙන් මෙය කිරීමට:
එය ඔබ වෙනුවෙන් දේශීය ශාඛාවක් නිර්මාණය කරනු ඇත. එවිට ඔබ ඔබගේ වෙනස්කම් තල්ලු කරන සෑම විටම ඔබේ ශාඛාව දුරස්ථ සේවාදායකයට තල්ලු කරනු ලැබේ.
ඔබට එය ස්ටෑෂ් වලින් කළ හැකිය.
මට එය එසේ කිරීමට හැකි විය:
git branch new_branch_name `git log -n 1 --skip 3 --format=%H`
ඔබ මඟ හැරිය යුතු අගය ඇතුළත් කළ යුතු තැන. 0 යනු නවතම ය, 1 පෙර ය, 2 ඊට පෙර බැඳීම යනාදිය.
HEAD~1
(1 මඟින් 1 කැපවීම ආපසු නියම කරයි)?
මෙය එක් විධානයකින් ශාඛාව නිර්මාණය කරයි:
git push origin <sha1-of-commit>:refs/heads/<branch-name>
ඉහත ප්රකාශයට පත් කළ ඒවාට වඩා මම මේ ක්රමයට වඩා කැමතියි, මන්ද එය වහාම ශාඛාව නිර්මාණය කරයි (පසුව අමතර තල්ලු විධානයක් අවශ්ය නොවේ).
Sourcetree භාවිතා කිරීම | පහසුම ක්රමය.
මම කළේ මෙයයි:
C:\Users\[path]\build>git checkout -b responsivenavigation 8a75b001096536b3216022484af3026aa9c7bb5b
Switched to a new branch 'responsivenavigation'
C:\Users\jaimemontoya\Dropbox\CuponClub\androidapp\build>git branch
master
* responsivenavigation
මෙම අවස්ථාවේ දී, ශාඛාවට 8a75b001096536b3216022484af3026aa9c7bb5b
අයත් හා පැරණි බැඳීම master
.
Git ගබඩාවක විශේෂිත බැඳීමකට යන්න
සමහර විට git ගබඩාවක වැඩ කරන විට ඔබට නිශ්චිත වේලාවක ඔබේ ව්යාපෘතියේ ඡායාරූපයක් ලබා ගැනීම සඳහා නිශ්චිත බැඳීමක් (සංශෝධනයක්) වෙත යාමට අවශ්ය වේ. ඔබට අවශ්ය සියල්ල කිරීමට නම්, විධානය සමඟ ලොගය පරීක්ෂා කිරීම ඔබට පහසුවෙන් සොයාගත හැකි බැඳීමේ SHA-1 හෑෂ්:
git log --abbrev-commit --pretty=oneline
එමඟින් ඔබට සියලු කොමිස් වල සංයුක්ත ලැයිස්තුවක් සහ SHA-1 හැෂ් හි කෙටි අනුවාදය ලබා දෙනු ඇත.
දැන් ඔබ වෙත යාමට අවශ්ය කැපවීමේ හැෂ් ඔබ දන්නා බැවින් පහත දැක්වෙන විධාන 2 න් එකක් භාවිතා කළ හැකිය:
git checkout HASH
හෝ
git reset --hard HASH
පරීක්ෂාකාරී වන්න
git checkout <commit> <paths>
ලබා දී ඇති බැඳීම තුළ වර්තමාන මාර්ගවල තත්වය ඒවායේ තත්වය සමඟ ප්රතිස්ථාපනය කිරීමට git ට කියයි. මාර්ග ගොනු හෝ නාමාවලි විය හැකිය.
කිසිදු ශාඛාවක් ලබා නොදුනහොත්, git විසින් හෙඩ් කැපවීම උපකල්පනය කරයි.
git checkout <path> // restores path from your last commit. It is a 'filesystem-undo'.
කිසිදු මාර්ගයක් ලබා දී නොමැති නම්, ලබා දී ඇති බැඳීම HEAD
වෙත git ගමන් කරයි (එමඟින් ඔබ වාඩි වී වැඩ කරන බැඳීම වෙනස් කරයි).
git checkout branch //means switching branches.
යළි පිහිටුවන්න
git reset <commit> //re-sets the current pointer to the given commit.
ඔබ ශාඛාවක සිටී නම් (ඔබ සාමාන්යයෙන් විය යුතුය), HEAD
මෙම ශාඛාව කැපවීමට පෙළඹේ.
ඔබ වෙන්වූ HEAD
තත්වයේ සිටී නම්, git reset චලනය වන්නේ චලනය පමණි HEAD
. ශාඛාවක් නැවත සැකසීමට, පළමුව එය පරීක්ෂා කරන්න.
Git reset සහ git checkout අතර වෙනස ගැන වැඩි විස්තර දැන ගැනීමට ඔබට අවශ්ය නම් නිල git බ්ලොගය කියවීමට මම නිර්දේශ කරමි .
git log --abbrev-commit --pretty=oneline
කෙටියෙන් හැඳින්විය හැකියgit log --oneline
Git GUI භාවිතා කරන්නන් සඳහා ඔබට සියලු ඉතිහාසය දෘශ්යමාන කළ හැකිය (අවශ්ය නම්) ඉන්පසු ඔබට ශාඛා කිරීමට අවශ්ය බැඳීම මත දකුණු ක්ලික් කර ශාඛා නාමය ඇතුළත් කරන්න.
විෂුවල් ස්ටුඩියෝ 2015 සහ 2017 හි පිළිගත් පිළිතුර කිරීමට:
වෙනස් කිරීම් මත ක්ලික් කරන්න (ඉහළ රතු ඊතලය)
ක්රියාවන් මත ක්ලික් කරන්න (ඉහළ රතු ඊතලය) සහ ඩ්රොප් ඩවුන් මෙනුවේ ඉතිහාසය බලන්න ක්ලික් කරන්න
නව ටැබ් විවෘත වනු ඇත:
ඔබේ කේතය නැවත ලබා ගැනීමට අවශ්ය පෙර කැපවීම ඔබ දකුණු ක්ලික් කළ යුතුය:
නව ශාඛාවක් පිරික්සීමට තෝරාගෙන voilá!
පහත දැක්වෙන්නේ OP ප්රශ්නයේ කොටසක් නොවුනත්, මම බොහෝ දේ කරන අතර මෙය අවම වශයෙන් මට උපක්රමශීලී පියවරකි: ඔබට නව බැඳීමක් වෙත ආපසු යාමට අවශ්ය නම්, නව ශාඛාවක් පරීක්ෂා නොකර, ආපසු හැරවීම තෝරා නොගන්න (! ?); ඔබ නැවත අර්ථ දැක්වීම --mixed හෝ --hard තෝරා ගත යුතුය:
ඔබ කෙළින්ම ඉදිරියට යන ප්රභව ගසක් භාවිතා කරන්නේ නම්.
ඔබ විධාන රේඛා පදනම් කරගත් විසඳුමක් සොයන්නේ නම්, ඔබට මගේ පිළිතුර නොසලකා හැරිය හැකිය. මම ඔබට යෝජනා කරනවා GitKraken භාවිතා කරන්න . එය අසාමාන්ය git UI සේවාදායකයෙකි. එය මුල් පිටුවේ Git ගස පෙන්වයි. ඔබට ඒවා දෙස බලා ව්යාපෘතියෙන් සිදුවන්නේ කුමක්ද යන්න දැනගත හැකිය. නිශ්චිත බැඳීමක් තෝරන්න, එය මත දකුණු-ක්ලික් කර 'මෙහි ශාඛාවක් සාදන්න' විකල්පය තෝරන්න. ශාඛා නාමය ඇතුළත් කිරීමට එය ඔබට පෙළ කොටුවක් ලබා දෙනු ඇත. ශාඛා නාමය ඇතුළත් කරන්න, 'හරි' තෝරන්න, ඔබ සකසා ඇත. එය භාවිතා කිරීම ඇත්තෙන්ම ඉතා පහසුය.