Upvoted because this looks cool and I'm definitely your target audience. The README doesn't give me a great sense of how this actually works, though. A 5 minute video, or even a hypothetical example with some screenshots intermixed, would help a lot.
Nothing wrong with calling the git command directly since this isn't an app that needs to scale past 1 human user. It could be some busy work in the future to translate it all into git2go, I have a project like this. It's a personal tool I use to write my journal and it wraps git to manage the entry data by placing it in a git repository.
I can’t find any mention of GUI frontends for git-appraise.
While I prefer to write code in my terminal, I like to switch settings for reviewing code — with GitHub’s Pull Requests, I can just do it in the browser. Can I use git-appraise in my browser? Is there a stand-alone tool?
I see that an advantage is that it doesn't require server-side setup. But wouldn't one require some sort of central repo to coordinate code reviews and CI tests?
This seems to be extremely different to Gerrit. Gerrit requires a centralised server which acts in place of a regular git server. It has its own database, distinct from git, and adds the notion of a "Change ID". Generally you do your review through a web interface. It's all quite clunky, but it does its job very well.
This is distributed but more importantly it looks like it's more entangled/in-tune with git. It says it uses git notes [1], which appeals to me; they're a feature that are basically useless on their own, but seem to be included exactly for the use of something like git-appraise.
Regarding your comment about a central repo, I'd guess the idea is you use git-appraise like you use git today; it's decentralised in the technical layers, but you assign "central" repo in the human workflow layer.
I don't see why. Sure, the CI server would have to be involved in some way to run the tests, but a central server for "coordinating" code review is unnecessary, IMO. Now, as github (and others) have shown, a central place for code review is nice, but as long as the developers had tools that allowed them to work with the code reviews inside their repos, I don't see why a centralized service is necessary.
I asked the Gerrit devs for their opinion: because the git appraise solution doesn't support rebasing it doesn't work well with the idea of being able to fix commits and repush.
Maybe the gerrit developers will be motivated to support this. There has been talk of offline review/moving all metadata to git for some time now.
The point is that you can do reviews locally, push them, and other reviews will fetch. Just as git does not require a central authority, neither does this implementation.
That being said you could still write a web frontend to all of this, ala gerrit.
It does the code reviews in a distributed way. It just needs a central Git repo, but not a central code review server.
CI tests could work in a similar way! Each CI runner is polling for new commits, running tests against them, and pushing the results as git-notes in the Git repo, just like for the reviews.
To me it looks like something that could be used to implement Gerrit, but it doesn't come close to what Gerrit offers, having used it for a few years now. Gerrit is excellent at what it does.
Damn, feeling completely dumb. I have installed the tool, and am trying it on one of my projects. After I do some local commits `git-appraise request` returns `There are no commits included in the review request`. Is there any tutorial or more documentation available somewhere? Or do I need to dig into its code to find the issue?
Why does anyone part attention to your review anyway? Reputation. No one's going to trust a review from someone that doesn't have a track record. If you want to get a sock puppet identity with that much reputation by making useful contributions through it, well, go ahead. :) xkcd.com/810/
[+] [-] jonahx|10 years ago|reply
[+] [-] dominotw|10 years ago|reply
[+] [-] unknown|10 years ago|reply
[deleted]
[+] [-] flyinprogramer|10 years ago|reply
When building a tool that uses git I'm wondering if it is better practice to use git2go (https://github.com/libgit2/git2go) or to do what this author did which is wrap the git command line tool: https://github.com/google/git-appraise/blob/master/repositor...
[+] [-] ghthor|10 years ago|reply
[+] [-] nine_k|10 years ago|reply
Kudos to the author.
[1]: http://www.fossil-scm.org
[+] [-] ktt|10 years ago|reply
Clone the repo and then fetch notes manually:
After installing it through "go get" check existing code reviews with "git appraise list".There are notes from Jenkins and comments from developers as far as I can see.
Seems to be a little bit slow on my computer but the idea is really brilliant.
[+] [-] secure|10 years ago|reply
While I prefer to write code in my terminal, I like to switch settings for reviewing code — with GitHub’s Pull Requests, I can just do it in the browser. Can I use git-appraise in my browser? Is there a stand-alone tool?
[+] [-] rco8786|10 years ago|reply
[+] [-] dominotw|10 years ago|reply
[deleted]
[+] [-] pm90|10 years ago|reply
I see that an advantage is that it doesn't require server-side setup. But wouldn't one require some sort of central repo to coordinate code reviews and CI tests?
[+] [-] bjackman|10 years ago|reply
This is distributed but more importantly it looks like it's more entangled/in-tune with git. It says it uses git notes [1], which appeals to me; they're a feature that are basically useless on their own, but seem to be included exactly for the use of something like git-appraise.
Regarding your comment about a central repo, I'd guess the idea is you use git-appraise like you use git today; it's decentralised in the technical layers, but you assign "central" repo in the human workflow layer.
[1] http://git-scm.com/docs/git-notes
[+] [-] untothebreach|10 years ago|reply
[+] [-] alblue|10 years ago|reply
https://groups.google.com/forum/m/#!topic/repo-discuss/Uab1n...
[+] [-] xyzzy_plugh|10 years ago|reply
The point is that you can do reviews locally, push them, and other reviews will fetch. Just as git does not require a central authority, neither does this implementation.
That being said you could still write a web frontend to all of this, ala gerrit.
[+] [-] cjbprime|10 years ago|reply
CI tests could work in a similar way! Each CI runner is polling for new commits, running tests against them, and pushing the results as git-notes in the Git repo, just like for the reviews.
[+] [-] e40|10 years ago|reply
[+] [-] tremguy|10 years ago|reply
[+] [-] procrastitron|10 years ago|reply
[+] [-] thesorrow|10 years ago|reply
[+] [-] procrastitron|10 years ago|reply
[+] [-] soinus|10 years ago|reply
[+] [-] m4dc4pXXX|10 years ago|reply
Looks seriously cool and I am sad!
[+] [-] ubercow|10 years ago|reply
[+] [-] ktt|10 years ago|reply
[+] [-] andrewflnr|10 years ago|reply