{"thread":{"id":"31804","subject":"Why git shows staging area to users?","startedAt":"2012-10-13T21:08:36Z","lastAt":"2012-10-14T17:16:58Z","messageCount":6,"participants":["Yi, EungJun","Felipe Contreras","David Aguilar","Sitaram Chamarty","Junio C Hamano","Matthieu Moy"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"201086","messageId":"CAFT+Tg-g6KOs3YUKV_GWbZiO9qUG3LP8-T3Tdyd3LinnheQZ8A@mail.gmail.com","threadId":"31804","inReplyTo":null,"subject":"Why git shows staging area to users?","fromName":"Yi, EungJun","fromEmail":"semtlenori@gmail.com","sentAt":"2012-10-13T21:08:36Z","receivedAt":"2012-10-13T21:08:36Z","isPatch":false,"sender":{"key":"semtlenori@gmail.com","avatar":"https://gravatar.com/avatar/8363435d2badb3450df0dd7c4ec2113f6e1d62c44dd3cf7dfe83c5a389b8a9bf?d=mp&s=160"},"body":"Hi, all.\n\nWhy git shows staging area to users, compared with the other scms hide\nit? What benefits users get?\n\nI feel staging area is useful, but it is difficult to explain why when\nsomeone asks me about that.\n\nThanks.\n"},{"id":"201097","messageId":"CAMP44s2d_3rciA2QTy5vn0yNXEER90-y1Q_x8sn7+2mVJ2eoBA@mail.gmail.com","threadId":"31804","inReplyTo":"CAFT+Tg-g6KOs3YUKV_GWbZiO9qUG3LP8-T3Tdyd3LinnheQZ8A@mail.gmail.com","subject":"Re: Why git shows staging area to users?","fromName":"Felipe Contreras","fromEmail":"felipe.contreras@gmail.com","sentAt":"2012-10-14T00:06:39Z","receivedAt":"2012-10-14T00:06:39Z","isPatch":false,"sender":{"key":"felipe.contreras@gmail.com","avatar":"https://avatars.githubusercontent.com/u/8358?v=4"},"body":"On Sat, Oct 13, 2012 at 11:08 PM, Yi, EungJun <semtlenori@gmail.com> wrote:\n> I feel staging area is useful, but it is difficult to explain why when\n> someone asks me about that.\n\nI agree. There has been a lot of discussions about how to improve the\nUI to make it more user-friendly. Maybe sometime.\n\n-- \nFelipe Contreras\n"},{"id":"201098","messageId":"CAJDDKr7tUJ59jYDM-jhFnGMEB18taT7FsTJ24Hr=iBUgXXeYdg@mail.gmail.com","threadId":"31804","inReplyTo":"CAFT+Tg-g6KOs3YUKV_GWbZiO9qUG3LP8-T3Tdyd3LinnheQZ8A@mail.gmail.com","subject":"Re: Why git shows staging area to users?","fromName":"David Aguilar","fromEmail":"davvid@gmail.com","sentAt":"2012-10-14T00:56:39Z","receivedAt":"2012-10-14T00:56:39Z","isPatch":false,"sender":{"key":"davvid@gmail.com","avatar":"https://avatars.githubusercontent.com/u/13196?v=4"},"body":"On Sat, Oct 13, 2012 at 2:08 PM, Yi, EungJun <semtlenori@gmail.com> wrote:\n> Hi, all.\n>\n> Why git shows staging area to users, compared with the other scms hide\n> it? What benefits users get?\n\nhttp://thkoch2001.github.com/whygitisbetter/#the-staging-area\nhttp://tomayko.com/writings/the-thing-about-git\nhttp://gitready.com/beginner/2009/01/18/the-staging-area.html\n\nOther scms do not \"hide\"; other scms lack this feature altogether.\n\n> I feel staging area is useful, but it is difficult to explain why when\n> someone asks me about that.\n\nSee above.\n-- \nDavid\n"},{"id":"201099","messageId":"CAMK1S_hLDabfANbjrWEF6ZND7OZkAxxpGEeKdv2-3B5pmjiU1g@mail.gmail.com","threadId":"31804","inReplyTo":"CAFT+Tg-g6KOs3YUKV_GWbZiO9qUG3LP8-T3Tdyd3LinnheQZ8A@mail.gmail.com","subject":"Re: Why git shows staging area to users?","fromName":"Sitaram Chamarty","fromEmail":"sitaramc@gmail.com","sentAt":"2012-10-14T02:09:17Z","receivedAt":"2012-10-14T02:09:17Z","isPatch":false,"sender":{"key":"sitaramc@gmail.com","avatar":"https://avatars.githubusercontent.com/u/43316?v=4"},"body":"On Sun, Oct 14, 2012 at 2:38 AM, Yi, EungJun <semtlenori@gmail.com> wrote:\n> Hi, all.\n>\n> Why git shows staging area to users, compared with the other scms hide\n> it? What benefits users get?\n>\n> I feel staging area is useful, but it is difficult to explain why when\n> someone asks me about that.\n\nI wrote this a long time ago, more for my understanding than\notherwise, but maybe it is useful:\nhttp://sitaramc.github.com/concepts/uses-of-index.html\n"},{"id":"201114","messageId":"7vtxtx1xe8.fsf@alter.siamese.dyndns.org","threadId":"31804","inReplyTo":"CAJDDKr7tUJ59jYDM-jhFnGMEB18taT7FsTJ24Hr=iBUgXXeYdg@mail.gmail.com","subject":"Re: Why git shows staging area to users?","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2012-10-14T04:38:07Z","receivedAt":"2012-10-14T04:38:07Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"David Aguilar <davvid@gmail.com> writes:\n\n> On Sat, Oct 13, 2012 at 2:08 PM, Yi, EungJun <semtlenori@gmail.com> wrote:\n>> Hi, all.\n>>\n>> Why git shows staging area to users, compared with the other scms hide\n>> it? What benefits users get?\n>\n> http://thkoch2001.github.com/whygitisbetter/#the-staging-area\n> http://tomayko.com/writings/the-thing-about-git\n> http://gitready.com/beginner/2009/01/18/the-staging-area.html\n>\n> Other scms do not \"hide\"; other scms lack this feature altogether.\n>\n>> I feel staging area is useful, but it is difficult to explain why when\n>> someone asks me about that.\n>\n> See above.\n\nVery well said.  Thanks.\n"},{"id":"201186","messageId":"vpqr4p1as8l.fsf@grenoble-inp.fr","threadId":"31804","inReplyTo":"CAJDDKr7tUJ59jYDM-jhFnGMEB18taT7FsTJ24Hr=iBUgXXeYdg@mail.gmail.com","subject":"Re: Why git shows staging area to users?","fromName":"Matthieu Moy","fromEmail":"matthieu.moy@grenoble-inp.fr","sentAt":"2012-10-14T17:16:58Z","receivedAt":"2012-10-14T17:16:58Z","isPatch":false,"sender":{"key":"matthieu.moy@grenoble-inp.fr","avatar":"https://gravatar.com/avatar/72c8a2705971a25dfaff23cece15130d405685845d911aedd5667ace277f3fc5?d=mp&s=160"},"body":"David Aguilar <davvid@gmail.com> writes:\n\n> On Sat, Oct 13, 2012 at 2:08 PM, Yi, EungJun <semtlenori@gmail.com> wrote:\n>> Hi, all.\n>>\n>> Why git shows staging area to users, compared with the other scms hide\n>> it? What benefits users get?\n>\n> http://thkoch2001.github.com/whygitisbetter/#the-staging-area\n> http://tomayko.com/writings/the-thing-about-git\n> http://gitready.com/beginner/2009/01/18/the-staging-area.html\n>\n> Other scms do not \"hide\"; other scms lack this feature altogether.\n\nMore precisely: there are several things in what git calls \"the index\"\nor \"the staging area\" (i.e. .git/index):\n\n1) a list of files tracked by Git\n\n2) a record of the last known meta-data of the file, used to avoid\n   re-reading unmodified files content each time one runs \"diff\",\n   \"commit\" or so.\n\n3) a record of the file's staged *content* (possible several records in\n   case a merge is going on)\n\nAny decent revision control has the equivalent of 1) and 2), but AFAIK,\n3) is a unique feature of Git. There is a frequent confusion between 2)\nand 3) that leads to people (often other revision-control\nusers/developers) wonder why this is visible to the user. 2) is a\nperformance optimization that can be hidden to the user (it is with\nGit's porcelain commands), but 3) is user-visible.\n\n-- \nMatthieu Moy\nhttp://www-verimag.imag.fr/~moy/\n"}]}