- Notifications
You must be signed in to change notification settings - Fork 914
git branch
Norbert Rozmus edited this page Apr 5, 2017 · 14 revisions
$ git branch using(varrepo=newRepository("path/to/your/repo")){foreach(Branchbinrepo.Branches.Where(b =>!b.IsRemote)){Console.WriteLine(string.Format("{0}{1}",b.IsCurrentRepositoryHead?"*":" ",b.FriendlyName));}}$ git branch --contains <commit> using(varrepo=newRepository("path/to/your/repo")){conststringcommitSha="5b5b025afb0b4c913b4c338a42934a3863bf3644";foreach(BranchbinListBranchesContainingCommit(repo,commitSha)){Console.WriteLine(b.Name);}}privateIEnumerable<Branch>ListBranchesContainingCommit(Repositoryrepo,stringcommitSha){varlocalHeads=repo.Refs.Where(r =>r.IsLocalBranch);varcommit=repo.Lookup<Commit>(commitSha);varlocalHeadsContainingTheCommit=repo.Refs.ReachableFrom(localHeads,new[]{commit});returnlocalHeadsContainingTheCommit.Select(branchRef =>repo.Branches[branchRef.CanonicalName]);}$ git branch develop using(varrepo=newRepository("path/to/your/repo")){repo.CreateBranch("develop");// Or repo.Branches.Add("develop", "HEAD");}$ git branch other HEAD~1 using(varrepo=newRepository("path/to/your/repo")){repo.CreateBranch("other","HEAD~1");// Or repo.Branches.Add("other", "HEAD~1");}To be done
To be done
To be done
To be done
using(varrepo=newRepository("path/to/your/repo")){repo.Branches.Remove("BranchToDelete");}$ git branch --edit-description vardescription="branch description"using(varrepo=newRepository("path/to/your/repo")){varkey=string.Format("branch.{0}.description",branch);repo.Config.Set(key,description.Replace(Environment.NewLine,string.Empty));// set descriptionrepo.Config.Unset(key);// remove description}