Browse Source

bug fixed

tags/v1.2.0-rc1
Lunny Xiao 11 years ago
parent
commit
9b509054cf
3 changed files with 36 additions and 15 deletions
  1. +2
    -3
      models/repo.go
  2. +17
    -5
      serve.go
  3. +17
    -7
      update.go

+ 2
- 3
models/repo.go View File

@@ -261,7 +261,6 @@ func initRepository(f string, user *User, repo *Repository, initReadme bool, rep
return err
}

/*
// hook/post-update
pu, err := os.OpenFile(filepath.Join(repoPath, "hooks", "post-update"), os.O_CREATE|os.O_WRONLY, 0777)
if err != nil {
@@ -269,11 +268,11 @@ func initRepository(f string, user *User, repo *Repository, initReadme bool, rep
}
defer pu.Close()
// TODO: Windows .bat
if _, err = pu.WriteString(fmt.Sprintf("#!/usr/bin/env bash\n%s update\n", appPath)); err != nil {
if _, err = pu.WriteString(fmt.Sprintf("#!/usr/bin/env bash\n%s update ARGV[0] ARGV[1] ARGV[2]\n", appPath)); err != nil {
return err
}

// hook/post-update
/*// hook/post-update
pu2, err := os.OpenFile(filepath.Join(repoPath, "hooks", "post-receive"), os.O_CREATE|os.O_WRONLY, 0777)
if err != nil {
return err


+ 17
- 5
serve.go View File

@@ -212,18 +212,18 @@ func runServ(k *cli.Context) {
return
}

if isRead {
//if isRead {
return
}
//}

time.Sleep(time.Second)
log.Info(s)

// find push reference name
var t = "ok refs/heads/"
var i int
//var t = "ok refs/heads/"
//var i int
var refname string
for {
/*for {
l, err := b.ReadString('\n')
if err != nil {
break
@@ -235,6 +235,18 @@ func runServ(k *cli.Context) {
refname = l[idx+len(t):]
}
}
*/

refs2, err := rep.AllReferencesMap()
for name, ref := range refs2 {
if ref2, ok := refs[name]; ok {
if ref.Oid.Equal(ref2.Oid) {
continue
}
}
refname = name
break
}
if refname == "" {
println("No find any reference name:", s)
return


+ 17
- 7
update.go View File

@@ -4,9 +4,12 @@

package main

import "github.com/codegangsta/cli"

//"github.com/gogits/gogs/modules/log"
import (
"fmt"
"os"
"github.com/codegangsta/cli"
"github.com/gogits/gogs/modules/log"
)

var CmdUpdate = cli.Command{
Name: "update",
@@ -18,11 +21,18 @@ gogs serv provide access auth for repositories`,
}

// for command: ./gogs update
func runUpdate(*cli.Context) {
/*w, _ := os.Create("update.log")
log.SetOutput(w)
func runUpdate(c *cli.Context) {
level := "0"
os.MkdirAll("log", os.ModePerm)
log.NewLogger(10000, "file", fmt.Sprintf(`{"level":%s,"filename":"%s"}`, level, "log/serv.log"))
log.Info("start update logging...")

userName := os.Getenv("userName")
//w, _ := os.Create("update.log")
//log.SetOutput(w)
for i, arg := range c.Args() {
log.Info("%d : %s", i, arg)
}
/*userName := os.Getenv("userName")
userId := os.Getenv("userId")
repoId := os.Getenv("repoId")
repoName := os.Getenv("repoName")


Loading…
Cancel
Save