Run git commands from outside the repository












0















I often need to run certain git commands (usually git log) on files in many different repositories. I would like a way for git to automatically run commands such as



git log --oneline /full/path/to/file/in/other/repo


in the following manner:



git -C /full/path/to/file/in/other log --oneline /full/path/to/file/in/other/repo


without having to type -C /full/path/to/file/in/other or changing directory manually. I would like git to infer from the full path what repository the file is in.










share|improve this question




















  • 1





    If the other repo (e.g. .git folder) resides in /full/path/to/file/in/other, your usage of the -C parameter appears to be correct. What problems are you running into with it?

    – mlhDev
    Jan 22 at 13:18











  • The command works, I would like a way to not have to type -C /full/path/to/file/in/other whenever I happen to be in another repository.

    – NicestPerson
    Jan 22 at 13:31











  • Well you need to somehow tell Git which repository to use. Like a wrapper script or shell aliases or whatever. They’d have to be maintained though. I’m not sure what exactly you’re expecting?

    – Daniel B
    Jan 22 at 14:01











  • I want git to infer the repository based on the file path. The file itself does reside in a repository, so in the same way git can lookup the repo from my working directory, it or a script can look up from the file's location. If the file is outside a repository, then git should still complain as it does now.

    – NicestPerson
    Jan 22 at 14:06
















0















I often need to run certain git commands (usually git log) on files in many different repositories. I would like a way for git to automatically run commands such as



git log --oneline /full/path/to/file/in/other/repo


in the following manner:



git -C /full/path/to/file/in/other log --oneline /full/path/to/file/in/other/repo


without having to type -C /full/path/to/file/in/other or changing directory manually. I would like git to infer from the full path what repository the file is in.










share|improve this question




















  • 1





    If the other repo (e.g. .git folder) resides in /full/path/to/file/in/other, your usage of the -C parameter appears to be correct. What problems are you running into with it?

    – mlhDev
    Jan 22 at 13:18











  • The command works, I would like a way to not have to type -C /full/path/to/file/in/other whenever I happen to be in another repository.

    – NicestPerson
    Jan 22 at 13:31











  • Well you need to somehow tell Git which repository to use. Like a wrapper script or shell aliases or whatever. They’d have to be maintained though. I’m not sure what exactly you’re expecting?

    – Daniel B
    Jan 22 at 14:01











  • I want git to infer the repository based on the file path. The file itself does reside in a repository, so in the same way git can lookup the repo from my working directory, it or a script can look up from the file's location. If the file is outside a repository, then git should still complain as it does now.

    – NicestPerson
    Jan 22 at 14:06














0












0








0


0






I often need to run certain git commands (usually git log) on files in many different repositories. I would like a way for git to automatically run commands such as



git log --oneline /full/path/to/file/in/other/repo


in the following manner:



git -C /full/path/to/file/in/other log --oneline /full/path/to/file/in/other/repo


without having to type -C /full/path/to/file/in/other or changing directory manually. I would like git to infer from the full path what repository the file is in.










share|improve this question
















I often need to run certain git commands (usually git log) on files in many different repositories. I would like a way for git to automatically run commands such as



git log --oneline /full/path/to/file/in/other/repo


in the following manner:



git -C /full/path/to/file/in/other log --oneline /full/path/to/file/in/other/repo


without having to type -C /full/path/to/file/in/other or changing directory manually. I would like git to infer from the full path what repository the file is in.







git






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jan 22 at 14:19







NicestPerson

















asked Jan 22 at 12:41









NicestPersonNicestPerson

13




13








  • 1





    If the other repo (e.g. .git folder) resides in /full/path/to/file/in/other, your usage of the -C parameter appears to be correct. What problems are you running into with it?

    – mlhDev
    Jan 22 at 13:18











  • The command works, I would like a way to not have to type -C /full/path/to/file/in/other whenever I happen to be in another repository.

    – NicestPerson
    Jan 22 at 13:31











  • Well you need to somehow tell Git which repository to use. Like a wrapper script or shell aliases or whatever. They’d have to be maintained though. I’m not sure what exactly you’re expecting?

    – Daniel B
    Jan 22 at 14:01











  • I want git to infer the repository based on the file path. The file itself does reside in a repository, so in the same way git can lookup the repo from my working directory, it or a script can look up from the file's location. If the file is outside a repository, then git should still complain as it does now.

    – NicestPerson
    Jan 22 at 14:06














  • 1





    If the other repo (e.g. .git folder) resides in /full/path/to/file/in/other, your usage of the -C parameter appears to be correct. What problems are you running into with it?

    – mlhDev
    Jan 22 at 13:18











  • The command works, I would like a way to not have to type -C /full/path/to/file/in/other whenever I happen to be in another repository.

    – NicestPerson
    Jan 22 at 13:31











  • Well you need to somehow tell Git which repository to use. Like a wrapper script or shell aliases or whatever. They’d have to be maintained though. I’m not sure what exactly you’re expecting?

    – Daniel B
    Jan 22 at 14:01











  • I want git to infer the repository based on the file path. The file itself does reside in a repository, so in the same way git can lookup the repo from my working directory, it or a script can look up from the file's location. If the file is outside a repository, then git should still complain as it does now.

    – NicestPerson
    Jan 22 at 14:06








1




1





If the other repo (e.g. .git folder) resides in /full/path/to/file/in/other, your usage of the -C parameter appears to be correct. What problems are you running into with it?

– mlhDev
Jan 22 at 13:18





If the other repo (e.g. .git folder) resides in /full/path/to/file/in/other, your usage of the -C parameter appears to be correct. What problems are you running into with it?

– mlhDev
Jan 22 at 13:18













The command works, I would like a way to not have to type -C /full/path/to/file/in/other whenever I happen to be in another repository.

– NicestPerson
Jan 22 at 13:31





The command works, I would like a way to not have to type -C /full/path/to/file/in/other whenever I happen to be in another repository.

– NicestPerson
Jan 22 at 13:31













Well you need to somehow tell Git which repository to use. Like a wrapper script or shell aliases or whatever. They’d have to be maintained though. I’m not sure what exactly you’re expecting?

– Daniel B
Jan 22 at 14:01





Well you need to somehow tell Git which repository to use. Like a wrapper script or shell aliases or whatever. They’d have to be maintained though. I’m not sure what exactly you’re expecting?

– Daniel B
Jan 22 at 14:01













I want git to infer the repository based on the file path. The file itself does reside in a repository, so in the same way git can lookup the repo from my working directory, it or a script can look up from the file's location. If the file is outside a repository, then git should still complain as it does now.

– NicestPerson
Jan 22 at 14:06





I want git to infer the repository based on the file path. The file itself does reside in a repository, so in the same way git can lookup the repo from my working directory, it or a script can look up from the file's location. If the file is outside a repository, then git should still complain as it does now.

– NicestPerson
Jan 22 at 14:06










1 Answer
1






active

oldest

votes


















0














There are three ways to tell git where the repository is:




  1. The most common is to look in the working directory you are in. This may be an option in combination with other shell commands like pushd and popd

  2. You can direct the git command using the -C parameter as you are already doing.

  3. You can set the GIT_DIR environment variable (described here as "the location of the .git folder")






share|improve this answer























    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "3"
    };
    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: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    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%2fsuperuser.com%2fquestions%2f1397005%2frun-git-commands-from-outside-the-repository%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    There are three ways to tell git where the repository is:




    1. The most common is to look in the working directory you are in. This may be an option in combination with other shell commands like pushd and popd

    2. You can direct the git command using the -C parameter as you are already doing.

    3. You can set the GIT_DIR environment variable (described here as "the location of the .git folder")






    share|improve this answer




























      0














      There are three ways to tell git where the repository is:




      1. The most common is to look in the working directory you are in. This may be an option in combination with other shell commands like pushd and popd

      2. You can direct the git command using the -C parameter as you are already doing.

      3. You can set the GIT_DIR environment variable (described here as "the location of the .git folder")






      share|improve this answer


























        0












        0








        0







        There are three ways to tell git where the repository is:




        1. The most common is to look in the working directory you are in. This may be an option in combination with other shell commands like pushd and popd

        2. You can direct the git command using the -C parameter as you are already doing.

        3. You can set the GIT_DIR environment variable (described here as "the location of the .git folder")






        share|improve this answer













        There are three ways to tell git where the repository is:




        1. The most common is to look in the working directory you are in. This may be an option in combination with other shell commands like pushd and popd

        2. You can direct the git command using the -C parameter as you are already doing.

        3. You can set the GIT_DIR environment variable (described here as "the location of the .git folder")







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Jan 22 at 13:47









        mlhDevmlhDev

        1467




        1467






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Super User!


            • 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.


            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%2fsuperuser.com%2fquestions%2f1397005%2frun-git-commands-from-outside-the-repository%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

            "Incorrect syntax near the keyword 'ON'. (on update cascade, on delete cascade,)

            Alcedinidae

            Origin of the phrase “under your belt”?