{"thread":{"id":"34286","subject":"Off-line deverloper workflow?","startedAt":"2013-06-27T12:46:56Z","lastAt":"2013-06-27T17:17:59Z","messageCount":10,"participants":["Woody Wu","Fredrik Gustafsson","Johan Herland","Jean-Noël Avila","Tim Chase","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"222074","messageId":"20130627124656.GA2620@zuhnb712","threadId":"34286","inReplyTo":null,"subject":"Off-line deverloper workflow?","fromName":"Woody Wu","fromEmail":"narkewoody@gmail.com","sentAt":"2013-06-27T12:46:56Z","receivedAt":"2013-06-27T12:46:56Z","isPatch":false,"sender":{"key":"narkewoody@gmail.com","avatar":null},"body":"Hi,\n\nI have a colleague who has to left our office for three month, but still\nneed to work on the project which is hosted on our in-office git\nrepository. Problem is that our company has firewall, it's not possible\nor not allowed to access the company LAN outside the building.  So I\nwant to ask you expert, can you suggest a best practice of git workflow\nthat suitable to my situation?\n\nThanks in advance.\n\n-woody\n"},{"id":"222076","messageId":"20130627125820.GA27497@paksenarrion.iveqy.com","threadId":"34286","inReplyTo":"20130627124656.GA2620@zuhnb712","subject":"Re: Off-line deverloper workflow?","fromName":"Fredrik Gustafsson","fromEmail":"iveqy@iveqy.com","sentAt":"2013-06-27T12:58:20Z","receivedAt":"2013-06-27T12:58:20Z","isPatch":false,"sender":{"key":"iveqy@iveqy.com","avatar":"https://avatars.githubusercontent.com/u/761743?v=4"},"body":"On Thu, Jun 27, 2013 at 08:46:56PM +0800, Woody Wu wrote:\n> Hi,\n> \n> I have a colleague who has to left our office for three month, but still\n> need to work on the project which is hosted on our in-office git\n> repository. Problem is that our company has firewall, it's not possible\n> or not allowed to access the company LAN outside the building.  So I\n> want to ask you expert, can you suggest a best practice of git workflow\n> that suitable to my situation?\n\nThere's a number of ways that git can communicate with an other git\nrepo. However, communication needs access. You can for example e-mail\nchanges or sen them as files manually with git sneakernet functionality.\nHowever those cases would be as bad (or worse) than to open your\nfirewall.\n\nThe \"best\" solution would be a remote repository outside your firewall\nwhere your inhouse team and your outhouse developer can share stuff with\neachother. However the securitry for this special project will be lower.\n(Maybe this isn't an important project to you, I don't know). This\nrepository can be at your inhouse-site, at your developer or at some\nthird part. Use ssh with keys and passphrases to communicate.\n\nKeep in mind that a git repository contains all of your source history.\nYour security for that source code will be whatever security your\nouthouse developer has. If he fails with his security, there's no\nmeaning with having great inhouse security.\n\nIf this isn't an option I would suggest that you establish an encrypted\nsneakernet (for example over UPS/bike messengers/whatever) between your\ndeveloper and your office. Or just ask yourself if your security\nsettings really is sane.\n\n-- \nMed vänliga hälsningar\nFredrik Gustafsson\n\ntel: 0733-608274\ne-post: iveqy@iveqy.com\n"},{"id":"222085","messageId":"20130627080605.067af4ae@bigbox.christie.dr","threadId":"34286","inReplyTo":"20130627124656.GA2620@zuhnb712","subject":"Re: Off-line deverloper workflow?","fromName":"Tim Chase","fromEmail":"git@tim.thechases.com","sentAt":"2013-06-27T13:06:05Z","receivedAt":"2013-06-27T13:06:05Z","isPatch":false,"sender":{"key":"git@tim.thechases.com","avatar":null},"body":"On 2013-06-27 20:46, Woody Wu wrote:\n> I have a colleague who has to left our office for three month, but\n> still need to work on the project which is hosted on our in-office\n> git repository. Problem is that our company has firewall, it's not\n> possible or not allowed to access the company LAN outside the\n> building.  So I want to ask you expert, can you suggest a best\n> practice of git workflow that suitable to my situation?\n\nIt would help to know a little more about the information flow and\nthe starting conditions.\n\n- Was a clone of code made before leaving your office or does your\n  colleague need to obtain the initial copy too?\n\n- How securely do you need to transfer matters?  (email?  shared\n  external service like Dropbox/Box.com/etc)\n\n- How frequently do updates need to be made?\n\n- In which direction do commits flow?  Just from your colleague back\n  to the office, or are there other updates happening in the office\n  that your colleague needs to pull down to keep in sync?\n\nWithout such answers, it's a little hard to suggest more than\ntransmitting either patch files or bundles using any of the following:\nemail, a shared cloud drive, a shared host out accessible on the net,\nor sneakernet media (flash-drive or CD/DVD, perhaps via the postal\nsystem), or possibly other means.\n\nYou may want to read more at\n\n  git help format-patch\n  git help am\n  git help bundle\n\n-tkc\n"},{"id":"222078","messageId":"CALKQrgdiRg--A4-cp7Y0c3-rc-gDX+QVgPxKDpmW5Exx_HeWHg@mail.gmail.com","threadId":"34286","inReplyTo":"20130627124656.GA2620@zuhnb712","subject":"Re: Off-line deverloper workflow?","fromName":"Johan Herland","fromEmail":"johan@herland.net","sentAt":"2013-06-27T13:14:05Z","receivedAt":"2013-06-27T13:14:05Z","isPatch":false,"sender":{"key":"johan@herland.net","avatar":"https://avatars.githubusercontent.com/u/547031?v=4"},"body":"On Thu, Jun 27, 2013 at 2:46 PM, Woody Wu <narkewoody@gmail.com> wrote:\n> I have a colleague who has to left our office for three month, but still\n> need to work on the project which is hosted on our in-office git\n> repository. Problem is that our company has firewall, it's not possible\n> or not allowed to access the company LAN outside the building.  So I\n> want to ask you expert, can you suggest a best practice of git workflow\n> that suitable to my situation?\n\nIf he can set up an SSH server on his machine (outside the company\nnetwork), then he can set up a mirror repo on his machine, where you\ncan push changes from the office to him, and pull changes from him\nback into the office. Of course, you will probably need to synchronize\nthis with him, especially if he's travelling and frequently offline or\nchanging IP addresses. Also you need to be able to make outbound SSH\nconnections through the company firewall, but AFAICS that is usually\nallowed.\n\nHis work repo is then a local clone of the mirror repo, and when he's\nready to publish some work to you, he pushes it to the mirror repo,\nand asks you to pull from the mirror repo.\n\nIf the source code is not secret, you could even synchronize through\nGitHub or some other repo hosting service, which would be even easier\nto set up.\n\n\nHope this helps,\n\n...Johan\n\n> Thanks in advance.\n>\n> -woody\n>\n> --\n> To unsubscribe from this list: send the line \"unsubscribe git\" in\n> the body of a message to majordomo@vger.kernel.org\n> More majordomo info at  http://vger.kernel.org/majordomo-info.html\n\n\n\n-- \nJohan Herland, <johan@herland.net>\nwww.herland.net\n"},{"id":"222080","messageId":"20130627133732.GA5047@zuhnb712","threadId":"34286","inReplyTo":"20130627080605.067af4ae@bigbox.christie.dr","subject":"Re: Off-line deverloper workflow?","fromName":"Woody Wu","fromEmail":"narkewoody@gmail.com","sentAt":"2013-06-27T13:37:32Z","receivedAt":"2013-06-27T13:37:32Z","isPatch":false,"sender":{"key":"narkewoody@gmail.com","avatar":null},"body":"On Thu, Jun 27, 2013 at 08:06:05AM -0500, Tim Chase wrote:\n> On 2013-06-27 20:46, Woody Wu wrote:\n> > I have a colleague who has to left our office for three month, but\n> > still need to work on the project which is hosted on our in-office\n> > git repository. Problem is that our company has firewall, it's not\n> > possible or not allowed to access the company LAN outside the\n> > building.  So I want to ask you expert, can you suggest a best\n> > practice of git workflow that suitable to my situation?\n> \n> It would help to know a little more about the information flow and\n> the starting conditions.\n> \n> - Was a clone of code made before leaving your office or does your\n>   colleague need to obtain the initial copy too?\n\nYes, he had a clone already.\n\n> \n> - How securely do you need to transfer matters?  (email?  shared\n>   external service like Dropbox/Box.com/etc)\n\nI prefer email.\n\n> \n> - How frequently do updates need to be made?\n> \n\nMaybe once several days.\n\n> - In which direction do commits flow?  Just from your colleague back\n>   to the office, or are there other updates happening in the office\n>   that your colleague needs to pull down to keep in sync?\n\nBi-direction, means my colleague and my in-house team need to modify the\ncode.\n\n> \n> Without such answers, it's a little hard to suggest more than\n> transmitting either patch files or bundles using any of the following:\n> email, a shared cloud drive, a shared host out accessible on the net,\n> or sneakernet media (flash-drive or CD/DVD, perhaps via the postal\n> system), or possibly other means.\n> \n> You may want to read more at\n> \n>   git help format-patch\n>   git help am\n>   git help bundle\n> \n> -tkc\n> \n> \n> \n> \n\n-- \nI can't go back to yesterday - because I was a different person then\n"},{"id":"222081","messageId":"20130627134156.GB5047@zuhnb712","threadId":"34286","inReplyTo":"CALKQrgdiRg--A4-cp7Y0c3-rc-gDX+QVgPxKDpmW5Exx_HeWHg@mail.gmail.com","subject":"Re: Off-line deverloper workflow?","fromName":"Woody Wu","fromEmail":"narkewoody@gmail.com","sentAt":"2013-06-27T13:41:56Z","receivedAt":"2013-06-27T13:41:56Z","isPatch":false,"sender":{"key":"narkewoody@gmail.com","avatar":null},"body":"On Thu, Jun 27, 2013 at 03:14:05PM +0200, Johan Herland wrote:\n> On Thu, Jun 27, 2013 at 2:46 PM, Woody Wu <narkewoody@gmail.com> wrote:\n> > I have a colleague who has to left our office for three month, but still\n> > need to work on the project which is hosted on our in-office git\n> > repository. Problem is that our company has firewall, it's not possible\n> > or not allowed to access the company LAN outside the building.  So I\n> > want to ask you expert, can you suggest a best practice of git workflow\n> > that suitable to my situation?\n> \n> If he can set up an SSH server on his machine (outside the company\n> network), then he can set up a mirror repo on his machine, where you\n> can push changes from the office to him, and pull changes from him\n> back into the office. Of course, you will probably need to synchronize\n> this with him, especially if he's travelling and frequently offline or\n> changing IP addresses. Also you need to be able to make outbound SSH\n> connections through the company firewall, but AFAICS that is usually\n> allowed.\n\nOutbound ssh to me is not a problem, but inbound ssh to him may be a big\nproblem. You know hotel firewall or some home ADSL don't allow that.\n\n> \n> His work repo is then a local clone of the mirror repo, and when he's\n> ready to publish some work to you, he pushes it to the mirror repo,\n> and asks you to pull from the mirror repo.\n\n> \n> If the source code is not secret, you could even synchronize through\n> GitHub or some other repo hosting service, which would be even easier\n> to set up.\n> \n> \n> Hope this helps,\n> \n> ...Johan\n> \n> > Thanks in advance.\n> >\n> > -woody\n> >\n> > --\n> > To unsubscribe from this list: send the line \"unsubscribe git\" in\n> > the body of a message to majordomo@vger.kernel.org\n> > More majordomo info at  http://vger.kernel.org/majordomo-info.html\n> \n> \n> \n> -- \n> Johan Herland, <johan@herland.net>\n> www.herland.net\n\n-- \nI can't go back to yesterday - because I was a different person then\n"},{"id":"222082","messageId":"51CC4197.3000007@gmail.com","threadId":"34286","inReplyTo":"20130627124656.GA2620@zuhnb712","subject":"Re: Off-line deverloper workflow?","fromName":"Jean-Noël Avila","fromEmail":"avila.jn@gmail.com","sentAt":"2013-06-27T13:43:51Z","receivedAt":"2013-06-27T13:43:51Z","isPatch":false,"sender":{"key":"jn.avila@free.fr","avatar":"https://avatars.githubusercontent.com/u/156172?v=4"},"body":"Le 27/06/2013 14:46, Woody Wu a écrit :\n> Hi,\n>\n> I have a colleague who has to left our office for three month, but still\n> need to work on the project which is hosted on our in-office git\n> repository. Problem is that our company has firewall, it's not possible\n> or not allowed to access the company LAN outside the building.  So I\n> want to ask you expert, can you suggest a best practice of git workflow\n> that suitable to my situation?\n>\n> Thanks in advance.\n>\n> -woody\n>\n> --\n> To unsubscribe from this list: send the line \"unsubscribe git\" in\n> the body of a message to majordomo@vger.kernel.org\n> More majordomo info at  http://vger.kernel.org/majordomo-info.html\n\nFor a short time, I had the same issue. We came up using \"git bundle\" to \nbundle changes and exchange them via email.\n\nThe setup was to work in two separate branches. The roaming developper \nstarted a new branch when leaving. After some work, she sent the commits \non her branch as a bundle file. The origin merged the branch extracted \nfrom the developper's bundle and sent back the bundle of the changes on \norigin since the last merge.\n\nNo doubt that both side need to understand well the workflow of \nfetch/merge. Bundle files can be encrypted for better security.\n\nHope this helps.\n\nJN\n"},{"id":"222083","messageId":"CALKQrgfLxcNAcSg7QB7h4RVwqdE3+XojKwJ9zfcUrpJ6xnV+5g@mail.gmail.com","threadId":"34286","inReplyTo":"20130627134156.GB5047@zuhnb712","subject":"Re: Off-line deverloper workflow?","fromName":"Johan Herland","fromEmail":"johan@herland.net","sentAt":"2013-06-27T13:47:19Z","receivedAt":"2013-06-27T13:47:19Z","isPatch":false,"sender":{"key":"johan@herland.net","avatar":"https://avatars.githubusercontent.com/u/547031?v=4"},"body":"On Thu, Jun 27, 2013 at 3:41 PM, Woody Wu <narkewoody@gmail.com> wrote:\n> On Thu, Jun 27, 2013 at 03:14:05PM +0200, Johan Herland wrote:\n>> On Thu, Jun 27, 2013 at 2:46 PM, Woody Wu <narkewoody@gmail.com> wrote:\n>> > I have a colleague who has to left our office for three month, but still\n>> > need to work on the project which is hosted on our in-office git\n>> > repository. Problem is that our company has firewall, it's not possible\n>> > or not allowed to access the company LAN outside the building.  So I\n>> > want to ask you expert, can you suggest a best practice of git workflow\n>> > that suitable to my situation?\n>>\n>> If he can set up an SSH server on his machine (outside the company\n>> network), then he can set up a mirror repo on his machine, where you\n>> can push changes from the office to him, and pull changes from him\n>> back into the office. Of course, you will probably need to synchronize\n>> this with him, especially if he's travelling and frequently offline or\n>> changing IP addresses. Also you need to be able to make outbound SSH\n>> connections through the company firewall, but AFAICS that is usually\n>> allowed.\n>\n> Outbound ssh to me is not a problem, but inbound ssh to him may be a big\n> problem. You know hotel firewall or some home ADSL don't allow that.\n\nIn that case, you will need either:\n\nA) A third machine, accessible from both you and him (preferably over\nSSH), where you can store the repo. I don't know what your company\ninfrastructure looks like, but maybe it's possible to setup a server\nin the DMZ outside your company firewall?\n\nB) Use a more manual mechanism like emailing bundles (as explained by\nJean-Noël).\n\n\n...Johan\n\n-- \nJohan Herland, <johan@herland.net>\nwww.herland.net\n"},{"id":"222084","messageId":"20130627135803.GA5660@zuhnb712","threadId":"34286","inReplyTo":"51CC4197.3000007@gmail.com","subject":"Re: Off-line deverloper workflow?","fromName":"Woody Wu","fromEmail":"narkewoody@gmail.com","sentAt":"2013-06-27T13:58:03Z","receivedAt":"2013-06-27T13:58:03Z","isPatch":false,"sender":{"key":"narkewoody@gmail.com","avatar":null},"body":"On Thu, Jun 27, 2013 at 03:43:51PM +0200, Jean-No?l Avila wrote:\n> Le 27/06/2013 14:46, Woody Wu a écrit :\n> >Hi,\n> >\n> >I have a colleague who has to left our office for three month, but still\n> >need to work on the project which is hosted on our in-office git\n> >repository. Problem is that our company has firewall, it's not possible\n> >or not allowed to access the company LAN outside the building.  So I\n> >want to ask you expert, can you suggest a best practice of git workflow\n> >that suitable to my situation?\n> >\n> >Thanks in advance.\n> >\n> >-woody\n> >\n> >--\n> >To unsubscribe from this list: send the line \"unsubscribe git\" in\n> >the body of a message to majordomo@vger.kernel.org\n> >More majordomo info at  http://vger.kernel.org/majordomo-info.html\n> \n> For a short time, I had the same issue. We came up using \"git\n> bundle\" to bundle changes and exchange them via email.\n> \n> The setup was to work in two separate branches. The roaming\n> developper started a new branch when leaving. After some work, she\n> sent the commits on her branch as a bundle file. The origin merged\n> the branch extracted from the developper's bundle and sent back the\n> bundle of the changes on origin since the last merge.\n> \n> No doubt that both side need to understand well the workflow of\n> fetch/merge. Bundle files can be encrypted for better security.\n> \n> Hope this helps.\n\nMany thanks, this method sounds suitable to me. I will go the learn\nanything about 'bundle'.\n\nHave a nice day!\n\n> \n> JN\n\n-- \nI can't go back to yesterday - because I was a different person then\n"},{"id":"222101","messageId":"7vd2r7tquw.fsf@alter.siamese.dyndns.org","threadId":"34286","inReplyTo":"51CC4197.3000007@gmail.com","subject":"Re: Off-line deverloper workflow?","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-06-27T17:17:59Z","receivedAt":"2013-06-27T17:17:59Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jean-Noël Avila <avila.jn@gmail.com> writes:\n\n> For a short time, I had the same issue. We came up using \"git bundle\"\n> to bundle changes and exchange them via email.\n> \n> The setup was to work in two separate branches. The roaming developper\n> started a new branch when leaving. After some work, she sent the\n> commits on her branch as a bundle file. The origin merged the branch\n> extracted from the developper's bundle and sent back the bundle of the\n> changes on origin since the last merge.\n>\n> No doubt that both side need to understand well the workflow of\n> fetch/merge. Bundle files can be encrypted for better security.\n\nYes, the above describes exactly what \"bundle\" was invented for.\n"}]}