{"meta":{"title":"Trabalhar com comentários","intro":"Ao usar a API REST, você pode acessar e gerenciar comentários nos seus pull requests, problemas ou commits.","product":"API REST","breadcrumbs":[{"href":"/pt/rest","title":"API REST"},{"href":"/pt/rest/guides","title":"Guias"},{"href":"/pt/rest/guides/working-with-comments","title":"Trabalhar com comentários"}],"documentType":"article"},"body":"# Trabalhar com comentários\n\nAo usar a API REST, você pode acessar e gerenciar comentários nos seus pull requests, problemas ou commits.\n\nPara qualquer pull request, GitHub fornece três tipos de visualização de comentários: [comentários no pull request](https://github.com/octocat/Spoon-Knife/pull/1176#issuecomment-24114792) como um todo, [comentários em uma linha específica](https://github.com/octocat/Spoon-Knife/pull/1176#discussion_r6252889) dentro do pull request e [comentários em um commit específico](https://github.com/octocat/Spoon-Knife/commit/cbc28e7c8caee26febc8c013b0adfb97a4edd96e#commitcomment-4049848) dentro do pull request.\n\nCada um desses tipos de comentários passa por uma parte diferente da GitHub API.\nNeste guia, vamos explorar como você pode acessar e manipular cada um. Para cada exemplo, usaremos [este exemplo de solicitação de pull criado](https://github.com/octocat/Spoon-Knife/pull/1176) no repositório \"octocat\". Como sempre, os exemplos podem ser encontrados em [nosso repositório platform-samples](https://github.com/github/platform-samples/tree/master/api/ruby/working-with-comments).\n\n## Comentários do Pull Request\n\nPara acessar os comentários em uma solicitação de pull, use os [pontos de extremidade para gerenciar problemas](/pt/rest/issues/comments).\nA princípio, isso pode parecer contraintuitivo. No entanto, uma vez que você entende que uma solicitação de pull é somente um problema com um código, faz sentido usar esses pontos de extremidade para criar comentários nela.\n\nDemonstraremos como buscar comentários de uma solicitação de pull criando um script do Ruby usando o [Octokit.rb](https://github.com/octokit/octokit.rb). Você também desejará criar um [personal access token](/pt/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens).\n\nO seguinte código ajudará você a começar a acessar os comentários de uma solicitação de pull usando o Octokit.rb:\n\n```ruby\nrequire 'octokit'\n\n# !!! DO NOT EVER USE HARD-CODED VALUES IN A REAL APP !!!\n# Instead, set and test environment variables, like below\nclient = Octokit::Client.new :access_token => ENV['MY_PERSONAL_TOKEN']\n\nclient.issue_comments(\"octocat/Spoon-Knife\", 1176).each do |comment|\n  username = comment[:user][:login]\n  post_date = comment[:created_at]\n  content = comment[:body]\n\n  puts \"#{username} made a comment on #{post_date}. It says:\\n'#{content}'\\n\"\nend\n```\n\nAqui, você chama especificamente a API para obter os comentários (`issue_comments`), fornecendo o nome do repositório (`octocat/Spoon-Knife`) e a ID da solicitação de pull em que tem interesse (`1176`). Depois disso, é simplesmente uma questão de percorrer os comentários para obter informações sobre cada um.\n\n## Comentários em uma linha de Pull Request\n\nNa exibição de comparação, você pode iniciar uma discussão sobre um aspecto específico de uma alteração singular feita na solicitação de pull. Esses comentários ocorrem nas linhas individuais de um arquivo alterado. A URL do ponto de extremidade dessa discussão é proveniente do [ponto de extremidade para gerenciar revisões de solicitação de pull](/pt/rest/pulls/comments).\n\nO código a seguir busca todos os comentários de pull request feitos em arquivos, dado um único número de pull request:\n\n```ruby\nrequire 'octokit'\n\n# !!! DO NOT EVER USE HARD-CODED VALUES IN A REAL APP !!!\n# Instead, set and test environment variables, like below\nclient = Octokit::Client.new :access_token => ENV['MY_PERSONAL_TOKEN']\n\nclient.pull_request_comments(\"octocat/Spoon-Knife\", 1176).each do |comment|\n  username = comment[:user][:login]\n  post_date = comment[:created_at]\n  content = comment[:body]\n  path = comment[:path]\n  position = comment[:position]\n\n  puts \"#{username} made a comment on #{post_date} for the file called #{path}, on line #{position}. It says:\\n'#{content}'\\n\"\nend\n```\n\nVocê perceberá que ele é incrivelmente semelhante ao exemplo acima. A diferença entre esta exibição e o comentário sobre a solicitação de pull é o foco da conversa.\nUm comentário feito em uma solicitação de pull deve ser reservado para discussão ou ideias sobre a orientação geral do código. Um comentário feito como parte de uma revisão de solicitação de pull deve lidar especificamente com a forma como determinada alteração foi implementada em um arquivo.\n\n## Comentários de commit\n\nO último tipo de comentários ocorre especificamente nos commits individuais. Por esse motivo, eles usam [o ponto de extremidade para gerenciar comentários de commit](/pt/rest/commits#get-a-commit-comment).\n\nPara recuperar os comentários em um commit, você deverá usar o SHA1 do commit.\nEm outras palavras, você não usará nenhum identificador relacionado ao Pull Request. Veja um exemplo:\n\n```ruby\nrequire 'octokit'\n\n# !!! DO NOT EVER USE HARD-CODED VALUES IN A REAL APP !!!\n# Instead, set and test environment variables, like below\nclient = Octokit::Client.new :access_token => ENV['MY_PERSONAL_TOKEN']\n\nclient.commit_comments(\"octocat/Spoon-Knife\", \"cbc28e7c8caee26febc8c013b0adfb97a4edd96e\").each do |comment|\n  username = comment[:user][:login]\n  post_date = comment[:created_at]\n  content = comment[:body]\n\n  puts \"#{username} made a comment on #{post_date}. It says:\\n'#{content}'\\n\"\nend\n```\n\nObserve que essa chamada à API vai recuperar os comentários de linha única, bem como os comentários feitos em todo o commit."}