automating to push changes to github for multiple repos using pythonShell script to assist with branch management for tasks in gitChrome extension that lets you push changes from Chrome Developer Tools directly to GitHubScript to checkout multiple repositories to a certain commit hashGit hook that checks out branch that was pushed to this repositoryBash script for tagging the current git workspace including uncommitted changesClone GitHub repository using PythonLocal source control - Part 2Scraping GitHub for security vulnerabilitiesAutomating the download of a GitHub repoPython script to synchronise your locally cloned fork to its parent github repository

Have the tides ever turned twice on any open problem?

Generic TVP tradeoffs?

Violin - Can double stops be played when the strings are not next to each other?

Why didn't Héctor fade away after this character died in the movie Coco?

Light propagating through a sound wave

What favor did Moody owe Dumbledore?

PTIJ: Do Irish Jews have "the luck of the Irish"?

Geography in 3D perspective

How is the partial sum of a geometric sequence calculated?

Why is there so much iron?

How can an organ that provides biological immortality be unable to regenerate?

두음법칙 - When did North and South diverge in pronunciation of initial ㄹ?

I got the following comment from a reputed math journal. What does it mean?

What is the significance behind "40 days" that often appears in the Bible?

What does "mu" mean as an interjection?

In Aliens, how many people were on LV-426 before the Marines arrived​?

Suggestions on how to spend Shaabath (constructively) alone

Inhabiting Mars versus going straight for a Dyson swarm

PTIJ What is the inyan of the Konami code in Uncle Moishy's song?

What exactly term 'companion plants' means?

A Ri-diddley-iley Riddle

Comment Box for Substitution Method of Integrals

HP P840 HDD RAID 5 many strange drive failures

Is it true that good novels will automatically sell themselves on Amazon (and so on) and there is no need for one to waste time promoting?



automating to push changes to github for multiple repos using python


Shell script to assist with branch management for tasks in gitChrome extension that lets you push changes from Chrome Developer Tools directly to GitHubScript to checkout multiple repositories to a certain commit hashGit hook that checks out branch that was pushed to this repositoryBash script for tagging the current git workspace including uncommitted changesClone GitHub repository using PythonLocal source control - Part 2Scraping GitHub for security vulnerabilitiesAutomating the download of a GitHub repoPython script to synchronise your locally cloned fork to its parent github repository













0












$begingroup$


This Python script does following activities:



  • clone repo, as provided from the list


  • creating a new branch "jenkinsMigrate"


  • rename Jenkinsfile to Jenkinsfile.migrate


  • push code to GitHub in a new branch.


NOTE: credentials were configured already.



 import git
import os
import subprocess

gitUrl = "https://*****"
cwd = "*****"

with open("migrateList.txt", "r") as file:
for line in file:
#configure gitUri for each repository
gitUri = gitUrl + line.strip() + ".git"
try:
global repo
repo = git.Repo.clone_from(gitUri, cwd + line.strip())
except:
print(" directory already available")
os.chdir(cwd + line.strip())

#checkout new branch for migration
repo.git.checkout('-b', "jenkinsMigrate")

subprocess.call(["git", "mv", "Jenkinsfile", "Jenkinsfile.migrate"])
repo.git.add(update=True)
repo.index.commit("jenkins migration")
origin = repo.remote(name='origin')

#push new branch to github
subprocess.call(["git","push", "--set-upstream", "origin", "jenkinsMigrate"])
subprocess.call(["cd", ".."])


Sample text file:



$ cat migrateList.txt 
repo1
repo2
repo3
repo4


This is a working code, but all I am looking for is to maintain consistency in the commands that I use. eg: For some of the git commands that I have used are from gitpython module where as others are invoked with shell commands. Apart from these any other suggestions are welcome.



Thanks!










share|improve this question









$endgroup$
















    0












    $begingroup$


    This Python script does following activities:



    • clone repo, as provided from the list


    • creating a new branch "jenkinsMigrate"


    • rename Jenkinsfile to Jenkinsfile.migrate


    • push code to GitHub in a new branch.


    NOTE: credentials were configured already.



     import git
    import os
    import subprocess

    gitUrl = "https://*****"
    cwd = "*****"

    with open("migrateList.txt", "r") as file:
    for line in file:
    #configure gitUri for each repository
    gitUri = gitUrl + line.strip() + ".git"
    try:
    global repo
    repo = git.Repo.clone_from(gitUri, cwd + line.strip())
    except:
    print(" directory already available")
    os.chdir(cwd + line.strip())

    #checkout new branch for migration
    repo.git.checkout('-b', "jenkinsMigrate")

    subprocess.call(["git", "mv", "Jenkinsfile", "Jenkinsfile.migrate"])
    repo.git.add(update=True)
    repo.index.commit("jenkins migration")
    origin = repo.remote(name='origin')

    #push new branch to github
    subprocess.call(["git","push", "--set-upstream", "origin", "jenkinsMigrate"])
    subprocess.call(["cd", ".."])


    Sample text file:



    $ cat migrateList.txt 
    repo1
    repo2
    repo3
    repo4


    This is a working code, but all I am looking for is to maintain consistency in the commands that I use. eg: For some of the git commands that I have used are from gitpython module where as others are invoked with shell commands. Apart from these any other suggestions are welcome.



    Thanks!










    share|improve this question









    $endgroup$














      0












      0








      0





      $begingroup$


      This Python script does following activities:



      • clone repo, as provided from the list


      • creating a new branch "jenkinsMigrate"


      • rename Jenkinsfile to Jenkinsfile.migrate


      • push code to GitHub in a new branch.


      NOTE: credentials were configured already.



       import git
      import os
      import subprocess

      gitUrl = "https://*****"
      cwd = "*****"

      with open("migrateList.txt", "r") as file:
      for line in file:
      #configure gitUri for each repository
      gitUri = gitUrl + line.strip() + ".git"
      try:
      global repo
      repo = git.Repo.clone_from(gitUri, cwd + line.strip())
      except:
      print(" directory already available")
      os.chdir(cwd + line.strip())

      #checkout new branch for migration
      repo.git.checkout('-b', "jenkinsMigrate")

      subprocess.call(["git", "mv", "Jenkinsfile", "Jenkinsfile.migrate"])
      repo.git.add(update=True)
      repo.index.commit("jenkins migration")
      origin = repo.remote(name='origin')

      #push new branch to github
      subprocess.call(["git","push", "--set-upstream", "origin", "jenkinsMigrate"])
      subprocess.call(["cd", ".."])


      Sample text file:



      $ cat migrateList.txt 
      repo1
      repo2
      repo3
      repo4


      This is a working code, but all I am looking for is to maintain consistency in the commands that I use. eg: For some of the git commands that I have used are from gitpython module where as others are invoked with shell commands. Apart from these any other suggestions are welcome.



      Thanks!










      share|improve this question









      $endgroup$




      This Python script does following activities:



      • clone repo, as provided from the list


      • creating a new branch "jenkinsMigrate"


      • rename Jenkinsfile to Jenkinsfile.migrate


      • push code to GitHub in a new branch.


      NOTE: credentials were configured already.



       import git
      import os
      import subprocess

      gitUrl = "https://*****"
      cwd = "*****"

      with open("migrateList.txt", "r") as file:
      for line in file:
      #configure gitUri for each repository
      gitUri = gitUrl + line.strip() + ".git"
      try:
      global repo
      repo = git.Repo.clone_from(gitUri, cwd + line.strip())
      except:
      print(" directory already available")
      os.chdir(cwd + line.strip())

      #checkout new branch for migration
      repo.git.checkout('-b', "jenkinsMigrate")

      subprocess.call(["git", "mv", "Jenkinsfile", "Jenkinsfile.migrate"])
      repo.git.add(update=True)
      repo.index.commit("jenkins migration")
      origin = repo.remote(name='origin')

      #push new branch to github
      subprocess.call(["git","push", "--set-upstream", "origin", "jenkinsMigrate"])
      subprocess.call(["cd", ".."])


      Sample text file:



      $ cat migrateList.txt 
      repo1
      repo2
      repo3
      repo4


      This is a working code, but all I am looking for is to maintain consistency in the commands that I use. eg: For some of the git commands that I have used are from gitpython module where as others are invoked with shell commands. Apart from these any other suggestions are welcome.



      Thanks!







      python git






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 12 mins ago









      Here_2_learnHere_2_learn

      378412




      378412




















          0






          active

          oldest

          votes











          Your Answer





          StackExchange.ifUsing("editor", function ()
          return StackExchange.using("mathjaxEditing", function ()
          StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
          StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["\$", "\$"]]);
          );
          );
          , "mathjax-editing");

          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "196"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodereview.stackexchange.com%2fquestions%2f215647%2fautomating-to-push-changes-to-github-for-multiple-repos-using-python%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Code Review Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          Use MathJax to format equations. MathJax reference.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodereview.stackexchange.com%2fquestions%2f215647%2fautomating-to-push-changes-to-github-for-multiple-repos-using-python%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          名間水力發電廠 目录 沿革 設施 鄰近設施 註釋 外部連結 导航菜单23°50′10″N 120°42′41″E / 23.83611°N 120.71139°E / 23.83611; 120.7113923°50′10″N 120°42′41″E / 23.83611°N 120.71139°E / 23.83611; 120.71139計畫概要原始内容臺灣第一座BOT 模式開發的水力發電廠-名間水力電廠名間水力發電廠 水利署首件BOT案原始内容《小檔案》名間電廠 首座BOT水力發電廠原始内容名間電廠BOT - 經濟部水利署中區水資源局

          Prove that NP is closed under karp reduction?Space(n) not closed under Karp reductions - what about NTime(n)?Class P is closed under rotation?Prove or disprove that $NL$ is closed under polynomial many-one reductions$mathbfNC_2$ is closed under log-space reductionOn Karp reductionwhen can I know if a class (complexity) is closed under reduction (cook/karp)Check if class $PSPACE$ is closed under polyonomially space reductionIs NPSPACE also closed under polynomial-time reduction and under log-space reduction?Prove PSPACE is closed under complement?Prove PSPACE is closed under union?

          Is my guitar’s action too high? Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern)Strings too stiff on a recently purchased acoustic guitar | Cort AD880CEIs the action of my guitar really high?Μy little finger is too weak to play guitarWith guitar, how long should I give my fingers to strengthen / callous?When playing a fret the guitar sounds mutedPlaying (Barre) chords up the guitar neckI think my guitar strings are wound too tight and I can't play barre chordsF barre chord on an SG guitarHow to find to the right strings of a barre chord by feel?High action on higher fret on my steel acoustic guitar