mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-11-03 17:24:22 +00:00 
			
		
		
		
	IP: RC Code Review
This commit is contained in:
		@@ -5,7 +5,7 @@ Gogs(Go Git Service) is a Self Hosted Git Service in the Go Programming Language
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
##### Current version: 0.1.8 Alpha
 | 
			
		||||
##### Current version: 0.1.9 Alpha
 | 
			
		||||
 | 
			
		||||
#### Other language version
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -5,7 +5,7 @@ Gogs(Go Git Service) 是一个由 Go 语言编写的自助 Git 托管服务。
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
##### 当前版本:0.1.8 Alpha
 | 
			
		||||
##### 当前版本:0.1.9 Alpha
 | 
			
		||||
 | 
			
		||||
## 开发目的
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -32,6 +32,7 @@ PATH = data/gogs.db
 | 
			
		||||
[admin]
 | 
			
		||||
 | 
			
		||||
[security]
 | 
			
		||||
INSTALL_LOCK = false
 | 
			
		||||
; Use HTTPS to clone repository, otherwise use HTTP.
 | 
			
		||||
ENABLE_HTTPS_CLONE = false
 | 
			
		||||
; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								gogs.go
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								gogs.go
									
									
									
									
									
								
							@@ -19,7 +19,7 @@ import (
 | 
			
		||||
// Test that go1.2 tag above is included in builds. main.go refers to this definition.
 | 
			
		||||
const go12tag = true
 | 
			
		||||
 | 
			
		||||
const APP_VER = "0.1.8.0327 Alpha"
 | 
			
		||||
const APP_VER = "0.1.9.0327 Alpha"
 | 
			
		||||
 | 
			
		||||
func init() {
 | 
			
		||||
	base.AppVer = APP_VER
 | 
			
		||||
 
 | 
			
		||||
@@ -37,12 +37,7 @@ type Issue struct {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// CreateIssue creates new issue for repository.
 | 
			
		||||
func CreateIssue(userId, repoId, milestoneId, assigneeId int64, issueCount int, name, labels, content string, isPull bool) (*Issue, error) {
 | 
			
		||||
	count, err := GetIssueCount(repoId)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
func CreateIssue(userId, repoId, milestoneId, assigneeId int64, issueCount int, name, labels, content string, isPull bool) (issue *Issue, err error) {
 | 
			
		||||
	// TODO: find out mentions
 | 
			
		||||
	mentions := ""
 | 
			
		||||
 | 
			
		||||
@@ -50,8 +45,8 @@ func CreateIssue(userId, repoId, milestoneId, assigneeId int64, issueCount int,
 | 
			
		||||
	defer sess.Close()
 | 
			
		||||
	sess.Begin()
 | 
			
		||||
 | 
			
		||||
	issue := &Issue{
 | 
			
		||||
		Index:       count + 1,
 | 
			
		||||
	issue = &Issue{
 | 
			
		||||
		Index:       int64(issueCount) + 1,
 | 
			
		||||
		Name:        name,
 | 
			
		||||
		RepoId:      repoId,
 | 
			
		||||
		PosterId:    userId,
 | 
			
		||||
@@ -81,11 +76,6 @@ func CreateIssue(userId, repoId, milestoneId, assigneeId int64, issueCount int,
 | 
			
		||||
	return issue, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// GetIssueCount returns count of issues in the repository.
 | 
			
		||||
func GetIssueCount(repoId int64) (int64, error) {
 | 
			
		||||
	return orm.Count(&Issue{RepoId: repoId})
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// GetIssueById returns issue object by given id.
 | 
			
		||||
func GetIssueByIndex(repoId, index int64) (*Issue, error) {
 | 
			
		||||
	issue := &Issue{RepoId: repoId, Index: index}
 | 
			
		||||
@@ -148,16 +138,10 @@ func GetIssues(userId, repoId, posterId, milestoneId int64, page int, isClosed,
 | 
			
		||||
 | 
			
		||||
// UpdateIssue updates information of issue.
 | 
			
		||||
func UpdateIssue(issue *Issue) error {
 | 
			
		||||
	_, err := orm.Update(issue, &Issue{RepoId: issue.RepoId, Index: issue.Index})
 | 
			
		||||
	_, err := orm.Id(issue.Id).AllCols().Update(issue)
 | 
			
		||||
	return err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func CloseIssue() {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func ReopenIssue() {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Label represents a list of labels of repository for issues.
 | 
			
		||||
type Label struct {
 | 
			
		||||
	Id     int64
 | 
			
		||||
@@ -197,8 +181,7 @@ func CreateComment(userId, issueId, commitId, line int64, content string) error
 | 
			
		||||
	sess.Begin()
 | 
			
		||||
 | 
			
		||||
	if _, err := orm.Insert(&Comment{PosterId: userId, IssueId: issueId,
 | 
			
		||||
		CommitId: commitId, Line: line, Content: content,
 | 
			
		||||
	}); err != nil {
 | 
			
		||||
		CommitId: commitId, Line: line, Content: content}); err != nil {
 | 
			
		||||
		sess.Rollback()
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -96,12 +96,11 @@ func IsRepositoryExist(user *User, repoName string) (bool, error) {
 | 
			
		||||
	has, err := orm.Where("lower_name = ?", strings.ToLower(repoName)).Get(&repo)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return has, err
 | 
			
		||||
	} else if !has {
 | 
			
		||||
		return false, nil
 | 
			
		||||
	}
 | 
			
		||||
	s, err := os.Stat(RepoPath(user.Name, repoName))
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return false, nil // Error simply means does not exist, but we don't want to show up.
 | 
			
		||||
	}
 | 
			
		||||
	return s.IsDir(), nil
 | 
			
		||||
 | 
			
		||||
	return com.IsDir(RepoPath(user.Name, repoName)), nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
@@ -224,16 +223,24 @@ func initRepoCommit(tmpPath string, sig *git.Signature) (err error) {
 | 
			
		||||
	if _, stderr, err = com.ExecCmdDir(tmpPath, "git", "add", "--all"); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	log.Trace("stderr(1): %s", stderr)
 | 
			
		||||
	if len(stderr) > 0 {
 | 
			
		||||
		log.Trace("stderr(1): %s", stderr)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if _, stderr, err = com.ExecCmdDir(tmpPath, "git", "commit", fmt.Sprintf("--author='%s <%s>'", sig.Name, sig.Email),
 | 
			
		||||
		"-m", "Init commit"); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	log.Trace("stderr(2): %s", stderr)
 | 
			
		||||
	if len(stderr) > 0 {
 | 
			
		||||
		log.Trace("stderr(2): %s", stderr)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if _, stderr, err = com.ExecCmdDir(tmpPath, "git", "push", "origin", "master"); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	log.Trace("stderr(3): %s", stderr)
 | 
			
		||||
	if len(stderr) > 0 {
 | 
			
		||||
		log.Trace("stderr(3): %s", stderr)
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -243,10 +250,9 @@ func createHookUpdate(hookPath, content string) error {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	defer pu.Close()
 | 
			
		||||
	if _, err = pu.WriteString(content); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
 | 
			
		||||
	_, err = pu.WriteString(content)
 | 
			
		||||
	return err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// InitRepository initializes README and .gitignore if needed.
 | 
			
		||||
@@ -322,10 +328,7 @@ func initRepository(f string, user *User, repo *Repository, initReadme bool, rep
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Apply changes and commit.
 | 
			
		||||
	if err := initRepoCommit(tmpDir, user.NewGitSig()); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
	return initRepoCommit(tmpDir, user.NewGitSig())
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// UserRepo reporesents a repository with user name.
 | 
			
		||||
 
 | 
			
		||||
@@ -7,8 +7,9 @@
 | 
			
		||||
        <div class="col-md-3 filter-list">
 | 
			
		||||
            <ul class="list-unstyled">
 | 
			
		||||
                <li><a href="#" class="active">All Issues <strong class="pull-right">{{.IssueCount}}</strong></a></li>
 | 
			
		||||
                <!-- <li><a href="#">My Issues</a></li>
 | 
			
		||||
                <li><a href="#">Mentioned</a></li> -->
 | 
			
		||||
                <!-- <li><a href="#">Assigned to you</a></li> -->
 | 
			
		||||
                <li><a href="#">Created by you</a></li>
 | 
			
		||||
                <!-- <li><a href="#">Mentioned</a></li> -->
 | 
			
		||||
            </ul>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="col-md-9">
 | 
			
		||||
 
 | 
			
		||||
@@ -17,8 +17,9 @@
 | 
			
		||||
        <div class="col-md-3 filter-list">
 | 
			
		||||
            <ul class="list-unstyled">
 | 
			
		||||
                <li><a href="#" class="active">In your repositories <strong class="pull-right">10</strong></a></li>
 | 
			
		||||
                <!-- <li><a href="#">Assigned to you</a></li> -->
 | 
			
		||||
                <li><a href="#">Created by you</a></li>
 | 
			
		||||
                <li><a href="#">Assigned to you</a></li>
 | 
			
		||||
                <!-- <li><a href="#">Assigned to you</a></li> -->
 | 
			
		||||
                <li><hr/></li>
 | 
			
		||||
                <li><a href="" class="sm">gogits/gogs <strong class="pull-right">12</strong></a></li>
 | 
			
		||||
                <li><a href="" class="sm">gogits/session <strong class="pull-right">8</strong></a></li>
 | 
			
		||||
@@ -33,36 +34,18 @@
 | 
			
		||||
                </div>
 | 
			
		||||
            </div>
 | 
			
		||||
            <div class="issues list-group">
 | 
			
		||||
                <div class="list-group-item unread issue-item" id="issue-id">
 | 
			
		||||
                    <span class="number pull-right">#123</span>
 | 
			
		||||
                    <h5 class="title"><a href="#">Bug: When running tests after generating a beego app, templates do not load.</a></h5>
 | 
			
		||||
                {{range .Issues}}
 | 
			
		||||
                <div class="list-group-item issue-item" id="issue-{{.Id}}">
 | 
			
		||||
                    <span class="number pull-right">#{{.Index}}</span>
 | 
			
		||||
                    <h5 class="title"><a href="/{{$.RepositoryLink}}/issues/{{.Index}}">{{.Name}}</a></h5>
 | 
			
		||||
                    <p class="info">
 | 
			
		||||
                        <span class="author"><img class="avatar" src="http://tp2.sinaimg.cn/5068084885/50/40050297589/1" alt="" width="20"/>
 | 
			
		||||
                        <a href="#">Obama</a></span>
 | 
			
		||||
                        <span class="time">3 days ago</span>
 | 
			
		||||
                        <span class="comment"><i class="fa fa-comments"></i> 3</span>
 | 
			
		||||
                    </p>
 | 
			
		||||
                </div>
 | 
			
		||||
                <div class="list-group-item issue-item" id="issue-id2">
 | 
			
		||||
                    <span class="number pull-right">#123</span>
 | 
			
		||||
                    <h5 class="title"><a href="#">Bug: When running tests after generating a beego app, templates do not load.</a></h5>
 | 
			
		||||
                    <p class="info">
 | 
			
		||||
                        <span class="author"><img class="avatar" src="http://tp2.sinaimg.cn/5068084885/50/40050297589/1" alt="" width="20"/>
 | 
			
		||||
                        <a href="#">Obama</a></span>
 | 
			
		||||
                        <span class="time">3 days ago</span>
 | 
			
		||||
                        <span class="comment"><i class="fa fa-comments"></i> 3</span>
 | 
			
		||||
                    </p>
 | 
			
		||||
                </div>
 | 
			
		||||
                <div class="list-group-item issue-item" id="issue-id3">
 | 
			
		||||
                    <span class="number pull-right">#123</span>
 | 
			
		||||
                    <h5 class="title"><a href="#">Bug: When running tests after generating a beego app, templates do not load.</a></h5>
 | 
			
		||||
                    <p class="info">
 | 
			
		||||
                        <span class="author"><img class="avatar" src="http://tp2.sinaimg.cn/5068084885/50/40050297589/1" alt="" width="20"/>
 | 
			
		||||
                        <a href="#">Obama</a></span>
 | 
			
		||||
                        <span class="time">3 days ago</span>
 | 
			
		||||
                        <span class="comment"><i class="fa fa-comments"></i> 3</span>
 | 
			
		||||
                        <span class="author"><img class="avatar" src="{{.Poster.AvatarLink}}" alt="" width="20"/>
 | 
			
		||||
                        <a href="/user/{{.Poster.Name}}">{{.Poster.Name}}</a></span>
 | 
			
		||||
                        <span class="time">{{TimeSince .Created}}</span>
 | 
			
		||||
                        <span class="comment"><i class="fa fa-comments"></i> {{.NumComments}}</span>
 | 
			
		||||
                    </p>
 | 
			
		||||
                </div>
 | 
			
		||||
                {{end}}
 | 
			
		||||
            </div>
 | 
			
		||||
        </div>
 | 
			
		||||
    </div>
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user