Mevcut bir Git ┼čubesinin uzak bir ┼čubeyi izlemesini sa─člay─▒n


Al─▒nan cevaba git


Uzak dallar─▒ izleyen yeni bir ┼čube yapmay─▒ biliyorum, ancak varolan bir dal─▒ uzak bir dal─▒ nas─▒l izlerim?

Sadece .git/config dosyay─▒ d├╝zenleyebilece─čimi biliyorum , ama daha kolay bir yolu olmal─▒.


3409









Cevap say─▒s─▒n─▒ say: 20






Bir ┼čube foo ve bir uzaktan verilen upstream :

Git 1.8.0'dan itibaren:

 git branch -u upstream/foo
 

Veya, yerel ┼čube foo mevcut ┼čube de─čilse:

 git branch -u upstream/foo foo
 

Veya, daha uzun komutlar yazmak isterseniz, bunlar yukar─▒daki ikisine e┼čde─čerdir:

 git branch --set-upstream-to=upstream/foo

git branch --set-upstream-to=upstream/foo foo
 

Git 1.7.0'dan itibaren:

 git branch --set-upstream foo upstream/foo
 

Notlar:

  • Yukar─▒daki komutlar─▒n t├╝m├╝, yerel ┼čubenin foo uzak ┼čubeyi foo uzaktan izlemesine neden olur upstream .
  • Eski (1.7.x) s├Âzdizimi yeni (1.8+) s├Âzdizimi lehine kald─▒r─▒lm─▒┼čt─▒r. Yeni s├Âzdiziminin daha sezgisel ve hat─▒rlanmas─▒ daha kolay olmas─▒ ama├žlanm─▒┼čt─▒r.
  • Giri┼č y├Ân├╝n├╝n tan─▒mlanmas─▒, getirilmemi┼č yeni olu┼čturulan uzaktan kumandalarla ba┼čar─▒s─▒z olur. Bu durumda git fetch upstream ├Ânceden ko┼čun .

Ayr─▒ca bak─▒n─▒z: Neden s├╝rekli - - set-up-up-up yapmam gerekiyor?


4146







A┼ča─č─▒dakileri yapabilirsiniz (ana sistemden ├ž─▒k─▒┼č yapt─▒─č─▒n─▒z─▒ ve uzak bir ┼čube ana bilgisayar─▒na itmek istedi─činizi varsayarak):

Zaten yoksa 'uzaktan' ayar─▒n─▒ yap

 git remote add origin ssh://...
 

┼×imdi master'─▒ izlemeyi bilecek ┼čekilde yap─▒land─▒r─▒n:

 git config branch.master.remote origin
git config branch.master.merge refs/heads/master
 

Ve ittir:

 git push origin master
 

232







Bunu, -u se├ženekle oldu─ču gibi zorlaman─▒n yan etkisi olarak yap─▒yorum .

 $ git push -u origin branch-name
 

E┼čde─čer uzun se├ženek --set-upstream .

git-branch Komut ayr─▒ca anlar --set-upstream , ancak kullan─▒m─▒ kafa kar─▒┼čt─▒r─▒c─▒ olabilir. S├╝r├╝m 1.8.0 aray├╝z├╝ de─či┼čtirir.

git branch --set-upstream kullan─▒mdan kald─▒r─▒lm─▒┼čt─▒r ve nispeten uzak bir gelecekte kald─▒r─▒labilir. git branch [-u|--set-upstream-to] daha sa─čl─▒kl─▒ bir arg├╝man s─▒ras─▒ ile tan─▒t─▒ld─▒.

...

S├Âylemek cazip gelmi┼čti git branch --set-upstream origin/master , ancak Git'e, yerel ┼čubeyi "├ž─▒k─▒┼č / ana" d├╝zenleyerek ┼ču anda kullan─▒ma al─▒nm─▒┼č ┼čubeyle entegre etmesini, kullan─▒c─▒n─▒n ne anlama geldi─činin ├žok d├╝┼č├╝k bir olas─▒l─▒kla ayarlad─▒─č─▒n─▒ s├Âyl├╝yor. Bu se├ženek kullan─▒mdan kald─▒r─▒lm─▒┼čt─▒r; Yeni kullanmak --set-upstream-to (tatl─▒ k─▒sa ve-ile -u yerine opsiyon).

Yerel bir foo ┼čubeniz oldu─čunu ve ┼čubeye giri┼č y├Ân├╝ndeki ad─▒yla ayn─▒ ┼čekilde davranmas─▒n─▒ istedi─činizi varsayal─▒m. Bunun olmas─▒n─▒ sa─čla

 $ git branch foo
$ git branch --set-upstream-to=origin/foo
 

ya da sadece

 $ git branch --set-upstream-to=origin/foo foo
 

156







git_remote_branch Arac─▒ yararl─▒ bulabilirsiniz . Uzak ┼čubeleri olu┼čturmak, yay─▒nlamak, silmek, izlemek ve yeniden adland─▒rmak i├žin basit komutlar sunar. G├╝zel bir ├Âzellik, grb hangi git komutunun y├╝r├╝tece─čini a├ž─▒klamak i├žin bir komut isteyebilmenizdir .

 grb explain create my_branch github
# git_remote_branch version 0.3.0

# List of operations to do to create a new remote branch and track it locally:
git push github master:refs/heads/my_branch
git fetch github
git branch --track my_branch github/my_branch
git checkout my_branch
 

54







Asl─▒nda kabul edilen cevab─▒n i┼če yaramas─▒ i├žin:

 git remote add upstream <remote-url>
git fetch upstream
git branch -f --track qa upstream/qa
# OR:
git branch --set-upstream qa upstream/qa
 

52







Git 1.5.x kadar erken bir zamanda yerel bir ┼čubeyi b├Âyle $BRANCH bir uzak ┼čubeyi takip edebilece─činize inan─▒yorum origin/$BRANCH .

Bunu g├Âz ├Ân├╝nde bulundurarak $BRANCH , origin/$BRANCH var olsan─▒z ve hen├╝z bir ├Âdeme yapmad─▒n─▒z $BRANCH (varsa, oradan ayr─▒l─▒n):

 git branch -f --track $BRANCH origin/$BRANCH
 

Bu $BRANCH bir izleme dal─▒ olarak yeniden olu┼čturur . -f Kuvvetler ra─čmen yaratma $BRANCH zaten mevcut. --track normal varsay─▒lanlar yerinde ise iste─če ba─čl─▒d─▒r (yani git-config parametresi branch.autosetupmerge do─črudur).

Not, origin/$BRANCH hen├╝z mevcut de─čilse, yerel b├Âlgenizi $BRANCH uzak havuza iterek olu┼čturabilirsiniz :

 git push origin $BRANCH
 

Yerel ┼čubeyi bir izleme ┼čubesine tan─▒tmak i├žin ├Ânceki komut taraf─▒ndan izleyin.


43







1- yerel meta- veriinizi g├╝ncelleyin: git fetch --all


g├Âr├╝nt├╝ tan─▒m─▒n─▒ buraya girin

2-uzak ve yerel ┼čubelerinizi kullanarak g├Âster: git branch -a , a┼ča─č─▒daki ekran g├Âr├╝nt├╝s├╝ne bak─▒n


g├Âr├╝nt├╝ tan─▒m─▒n─▒ buraya girin

3- uzaktan kumanda ile ba─člamak istedi─činiz hedef ┼čubeye ge├žin:

git ├Âdeme branchName

├Ârnek :


g├Âr├╝nt├╝ tan─▒m─▒n─▒ buraya girin

4- Yerel ┼čubenizi kullanarak uzak bir ┼čubeye ba─člay─▒n:

git ┼čubesi - set-upstream - ad─▒OfRemoteBranch

Not: nameOfRemoteBranch : 2. ad─▒m─▒n ├ž─▒k─▒┼č─▒ndan kopyalamak i├žin "git branch -r"

Kullan─▒m ├Ârne─či:


g├Âr├╝nt├╝ tan─▒m─▒n─▒ buraya girin


34







Ka├žt─▒─č─▒ndan emin ol:

 git config push.default tracking
 

Sorunsuz bir ┼čekilde zorlayabilmek


23







D├╝zenleme .git/config muhtemelen en kolay ve en h─▒zl─▒ yoldur. Zaten uzak dallarla ilgilenmek i├žin Git komutlar─▒n─▒n yapt─▒─č─▒ da bu.

Dosyay─▒ elle s─▒k─▒┼čt─▒rmak istemiyorsan─▒z (ve yap─▒lmas─▒ zor de─čil), bunu git config yapmak i├žin her zaman kullanabilirsiniz ... ama yine de bu, .git/config dosyay─▒ yine de d├╝zenleyecektir .

Ku┼čkusuz, uzaktaki bir dal─▒ kullan─▒rken git checkout ( --track ├Ârne─čin bayra─č─▒ ge├žerek) otomatik olarak izlemenin yollar─▒ vard─▒r , ancak bu komutlar var olanlarla de─čil yeni dallarla ├žal─▒┼č─▒r .


22







Çok kısa

 git branch --set-upstream yourLocalBranchName origin/develop
 

Bu, yourLocalBranchName takip etti─činiz uzak ┼čubeyi izlemenizi sa─člar develop .


17







1.6.x i├žin git_remote_branch arac─▒ kullan─▒larak yap─▒labilir :

 grb track foo upstream
 

Bu Git'in foo izini s├╝rmesine neden olacak upstream/foo .


15


2010-06-01





A┼ča─č─▒daki komutu kullan─▒yorum (Yerel ┼čube ad─▒n─▒z─▒n "┼čube ad─▒ yerel" ve uzak ┼čube ad─▒ "┼čube ad─▒ uzaktan" oldu─čunu varsayal─▒m):

 $ git branch --set-upstream-to=origin/branch-name-remote branch-name-local
 

Hem yerel hem de uzak dallar ayn─▒ ada sahipse, a┼ča─č─▒dakileri yapman─▒z yeterlidir:

 $ git branch --set-upstream-to=origin/branch-name branch-name
 

9







Burada kullanarak github ve git version 2.1.4 sadece yap─▒n:

 $ git clone [email protected]:user/repo.git
 

Uzaktan kumandalar yerel olarak ba─člant─▒l─▒ olmasa bile, itelsef taraf─▒ndan geliyor:

 $ git remote show origin

* remote origin
  Fetch URL: [email protected]:user/repo.git
  Push  URL: [email protected]:user/repo.git
  HEAD branch: master
  Remote branches:
    develop tracked         <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    master  tracked
  Local branch configured for 'git pull':
    master merges with remote master
  Local ref configured for 'git push':
    master pushes to master (up to date)
 

Ama elbette, yerel ┼čube yok:

 $ git branch
* master                  <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
 

G├Ârmek? ┼×imdi sadece yeni bir ├╝r├╝n geli┼čtirmeyi se├žtiyseniz, sihir otomatik olarak ger├žekle┼čir:

 $ git checkout develop
Branch develop set up to track remote branch develop from origin.
Switched to a new branch 'develop'
 

Çok kolay!


├ľzet. Sadece bu 2 komutu ├žal─▒┼čt─▒r─▒n:

 $ git clone [email protected]:user/repo.git
$ git checkout develop
 

8







'--Track' Se├žene─čini Kullan

  • Bir sonra git pull :

    git checkout --track <remote-branch-name>

  • Veya:

    git fetch && git checkout <branch-name>


8







Yeni ┼čube olu┼čturmak i├žin a┼ča─č─▒daki komutu kullanabiliriz

 git checkout - track - b ├Ârnek kaynak / ├Ârnek 
├ľnceden olu┼čturulmu┼č dal─▒n uzak aras─▒nda ba─člant─▒ kurmas─▒ ve o daldan ba─člant─▒ olu┼čturmas─▒ i├žin a┼ča─č─▒daki komutu kullan─▒n.

 git ┼čube-k├Âkeni / uzak dal ad─▒


7







Bu, bu soruya do─črudan bir cevap de─čil, ancak bir yukar─▒ ak─▒┼č dal─▒n─▒ yap─▒land─▒rmaya ├žal─▒┼č─▒rken, benimle ayn─▒ sorunu ya┼čayan herkes i├žin burada bir not b─▒rakmak istedim.

Push.default'a kar┼č─▒ dikkatli olun .

Eski git s├╝r├╝mleri ile varsay─▒lan olarak e┼čle┼čtirme ├Ârne─čin, varsa ├žok istenmeyen davran─▒┼ča neden olur,:

Yerel ┼čube "ana" ba┼člang─▒├ž ÔÇőÔÇő/ ana izleme

Uzak ┼čube "yukar─▒ ak─▒┼č" izleme yukar─▒ / ana

E─čer "yukar─▒ ak─▒┼č" dal─▒nda "git push" yapmaya ├žal─▒┼čt─▒ysan─▒z , push.default e┼čle┼čtirme ile otomatik olarak yerel dal "usta" 'y─▒ "yukar─▒ / usta" ile birle┼čtirerek ├žok fazla kaosa neden olur.

Bu daha akl─▒ ba┼č─▒nda davran─▒┼č verir:

git config - global push.default ak─▒┼č yukar─▒


5







Bir ┼čekilde ilgili bir ┼čekilde, mevcut bir ┼čubeye uzak bir izleme ┼čubesi eklemeye ├žal─▒┼č─▒yordum, ancak bu uzaktan izleme ┼čubesini eklemek istedi─čim sistemdeki o uzak havuza eri┼čimim yoktu (├ž├╝nk├╝ bunun bir kopyas─▒n─▒ s─▒k├ža verdi─čim i├žin) Bu uzaktan kumanday─▒ itmek i├žin eri┼čimi olan ba┼čka bir sisteme sneakernet ile repo). Yerelde hen├╝z al─▒nmam─▒┼č olan bir uzak dal eklemeye zorlaman─▒n bir yolu bulunmad─▒─č─▒n─▒ buldum (bu nedenle yerel uzak dalda var oldu─čunu bilmiyordu ve hatay─▒ al─▒rd─▒m:) the requested upstream branch 'origin/remotebranchname' does not exist .

Sonunda, yeni, daha ├Ânce bilinmeyen uzak bir dal─▒ (getirmeden) eklemeyi .git/refs/remotes/origin/remotebranchname ve sonra ref'i kopyalamay─▒ (g├Âz k├╝resi en h─▒zl─▒s─▒yd─▒; oldu─ču gibi; i┼č istasyonuna repo (uzak ┼čubeyi ekledi─čim yerel repo ile).

Bu yap─▒ld─▒ktan sonra kullanabilirim git branch --set-upstream-to=origin/remotebranchname


4







veya sadece:

zaten de─čilse, ┼čubeye ge├žin:

 [za]$ git checkout branch_name
 

ko┼čmak

 [za]$ git branch --set-upstream origin branch_name
Branch origin set up to track local branch brnach_name by rebasing.
 

ve sen haz─▒rs─▒n:

  [za]$ git push origin branch_name
 

Neyin ├žal─▒┼čt─▒─č─▒n─▒ neyin takip etti─čini g├Ârmek i├žin config dosyas─▒na bir g├Âz atabilirsiniz:

  [za]$ git config -e
 

Bunu bilmek de g├╝zel, hangi dallar─▒n izlendi─čini ve hangilerinin olmad─▒─č─▒n─▒ g├Âsteriyor. :

   [za]$ git remote show origin 
 

3


2016-10-07





Benim gibi, yerel ┼čube ad─▒n─▒z─▒ uzak ┼čube ad─▒yla senkronize etmek isteyen herkes i├žin, i┼čte size kullan─▒┼čl─▒ bir komut:

 git branch -u origin/$(git rev-parse --abbrev-ref HEAD)
 

1







Bu da i┼če yarayacak

 git branch --set-upstream-to=/< remote>/< branch> < localbranch>
 

-1


2016-06-22

─░lgili yay─▒nlar


Ge├žerli Git ┼čubesini ana dal yap

Yerel ┼čubeyi Git'teki uzak ┼čubeyle nas─▒l de─či┼čtiririm?

Yerel Git ┼čubesini uzaktan kumandadaki master dal─▒na nas─▒l itebilirim?

Mevcut bir Git alt mod├╝l├╝n├╝ Git deposunda nas─▒l ta┼č─▒r─▒m?

Git yerel ve uzak dal ad─▒n─▒ nas─▒l yeniden adland─▒rabilirim?

Zaten ├žok say─▒da dosyay─▒ izleyen mevcut bir depoya .gitignore uygulay─▒n

Git checkout - track ba┼člang─▒├ž ÔÇőÔÇő/ dal ile git checkout - b dal ├ž─▒k─▒┼č / dal aras─▒ndaki fark

Git: Uzaktaki bir dal─▒ yerel olarak birle┼čtirme

Uzaktaki t├╝m ┼čubeleri yerel ┼čubeler olarak takip et

Uzak ┼čubeyle yerel ┼čubemin ├╝zerine yazma

Etiketle ilgili di─čer sorular [git]


JQuery i├žindeki JSON'a seri hale getirme [duplicate]

Javascript'te fonksiyon a┼č─▒r─▒ y├╝kleme - En iyi y├Ântemler

HTML, TextView'da nas─▒l g├Âr├╝nt├╝lenir?

IEnumerable i├žin foreach LINQ e┼čde─čeri <T>

Di─čer Python dosyalar─▒ nas─▒l al─▒n─▒r?

Java Vector (ve Stack) s─▒n─▒f─▒ neden kullan─▒lm─▒yor ya da kullan─▒mdan kald─▒r─▒l─▒yor?

Windows cmd stdout ve stderr komutlar─▒n─▒ tek bir dosyaya y├Ânlendirin

eski uzak git dallar─▒n─▒ temizleme

De─či┼čtirilmi┼č uzak Git deposuna ba─čl─▒l─▒─č─▒ nas─▒l zorlayabilirim?

Python mod├╝llerinin versiyonu nas─▒l kontrol edilir?