如何在一个系统中配置两个具有不同凭据的不同git仓库?

时间:2017-03-30 12:56:46

标签: git github

本地存储库-1

我一直致力于我的组织的应用程序,其git存储库克隆在C盘文件夹中。  我已经设置了全局配置,并且我能够执行提交,推送,拉取操作。这是我的组织的私有存储库,具有唯一的用户名,密码和URL。一切正常,这个存储库。

问题

本地存储库-2   现在,我想在同一系统上创建我自己的github项目的本地存储库(与第一个不同),但是在不同的位置。此存储库具有与同一系统上的其他存储库不同的配置。所以我关注的是,如何在同一客户端系统上维护特定于存储库的配置(用户名,密码,URL)。

1 个答案:

答案 0 :(得分:7)

您有以下2个选项,根据您的首选方式(ssh或密码)基本访问git帐户: -

基于SSH的访问: - 为您公司的git帐户创建2个ssh密钥对,为您自己的git帐户创建一个。您需要按照this条款在git帐户上添加公开ssh密钥

密码基础访问: - 在这种情况下,您不需要做任何事情,只需要提供用户名密码在git push等。

重要提示: - 现在您需要为您的系统添加git configs(git用户名,电子邮件等),git可以选择 gloabl 本地 leval。我建议根据您的组织全局设置 user.email和user.name 设置,以避免提交具有您的私人git用户名和电子邮件的公司回购。

例如下面的git命令将显示git的gloabl设置: -

select
        grp.checktime,
        --min(convert(smalldatetime,l.checktime)) as clockin,
        --max(convert(smalldatetime,l.checktime)) as clockout,
        ClockIn = case when min(cast(l.checktime as time)) <= cast(sc.StartTime as time)
                        then convert(varchar(100), cast(l.checktime as time), 100)
                        else 'Late ClockIn ' + convert(varchar(100), cast(l.checktime as time), 100)
                        end,
        Clockout = case when max(cast(l.checktime as time)) >= cast(sc.EndTime as time)
                        then convert(varchar(100), cast(l.checktime as time), 100)
                        else 'Early ClockOut ' + convert(varchar(100), cast(l.checktime as time), 100)
                        end,
        l.userid,
        u.showname,
        u.BADGENUMBER
    from checkinout l
    inner join userinfo u on l.userid = u.userid
    inner join UserUsedsclasses uuc on u.userid = uuc.userid
    inner join SchClass sc on uuc.SchId = sc.schClassid
    inner join (
                    select distinct convert(Date,checktime) as checktime
                    from checkinout
                    group by convert(Date,checktime)
                ) as grp on grp.checktime = convert(Date, l.checktime)
    where uuc.SchId = 1 and u.badgenumber = 107
      and u.badgenumber not in (79, 103, 78)
      and l.checktime >= dateadd(month, datediff(month, 0, getdate() )  , 0)
      and l.checktime <  dateadd(month, datediff(month, 0, getdate ())+1, 0)
    group by 
        grp.checktime
      , l.userid
      , u.showname
      , u.BADGENUMBER
      , sc.StartTime
      , convert(date, l.checktime)
      , sc.EndTime 

要在私人git仓库中设置git用户名和密码,请在存储库中使用以下命令

git config --global --list
user.name=<firstname.lastname>
user.email=<company mail address>

您可以通过运行git config --local user.name "amit" git config --local user.email "amit@mail.com" 命令或username确认您自己的私人仓库,贵公司passwordgit config --edit