目前分類:版本控制系統 (20)

瀏覽方式: 標題列表 簡短摘要
  • 修改 Makefile.in,把 config.h: stamp-h1 改成 config.h: 。
  • 修改 Makefile.in,把 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status 改成 Makefile: 。
  • 如果還是有問題,就修改所有的 Makefile.in。
    find . -type f -name "Makefile.in" -exec sed -i 's/Makefile: $(srcdir)\/Makefile.in $(top_builddir)\/config.status/Makefile:/g' {} +
  • 如果還是發現 configure 一直被變更,表示很多參照 config.status,直接把下列文字移除。
    $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
            $(SHELL) ./config.status --recheck

.gitignore 有很多檔案不能忽略,下面是 json-c-0.13.1 的修改,沒改之前都會有 .Tpo 檔案的問題,把檔案都補回去就好了。

--- a/.gitignore      2018-03-06 12:18:59.000000000 +0800
+++ b/.gitignore        2018-09-26 19:35:00.387870137 +0800
@@ -76,29 +76,17 @@
 
 .deps/
 .libs/
-/aclocal.m4
-/autoconf-archive
 /autom4te.cache
-/config.guess
-/config.h.in
 /json_config.h
-/compile
 /config.h
 /config.log
 /config.status
-/config.sub
-/configure
-/depcomp
 /doc
-/install-sh
 /json.pc
 /json-c.pc
 /json-c-uninstalled.pc
 /libtool
-/ltmain.sh
 /Makefile
-/Makefile.in
-/missing
 /stamp-h1
 /stamp-h2

台南小新 發表在 痞客邦 留言(0) 人氣()

merge

  • git remote add fgn1300 https://github.com/fgn1300.git
  • git fetch fgn1300
  • git merge fgn1300/master
    $ git merge fgn1300/master
    Auto-merging source/vendors/Mediatek/MT7623/rcS
    Auto-merging source/vendors/Mediatek/MT7623/config/256M_256M_config.vendor-3.10.20.x
    Auto-merging source/vendors/Mediatek/MT7623/config/256M_256M_config.linux-3.10.20.x
    Auto-merging source/vendors/Mediatek/MT7623/RT2860_default_vlan
    CONFLICT (content): Merge conflict in source/vendors/Mediatek/MT7623/RT2860_default_vlan
    Auto-merging source/user/rt2880_app/scripts/internet.sh
    Auto-merging source/user/openswan-2.6.50/lib/libbsdpfkey/ipsec_get_policylen.c
    Auto-merging source/user/openswan-2.6.50/include/sysqueue.h
    Auto-merging source/user/openswan-2.6.50/include/arpa/nameser.h
    Auto-merging source/user/lighttpd-1.4.20/fibergate/treeapp_new.shtml
    Auto-merging source/user/Makefile
    Adding source/linux-3.10.20.x/drivers/net/wireless/mt_wifi
    Automatic merge failed; fix conflicts and then commit the result.
  • modify RT2860_default_vlan
  • git add source/vendors/Mediatek/MT7623/RT2860_default_vlan
  • git commit -m "conflict fixed"
  • git push

rebase

  • git remote add fgn1300 https://github.com/fgn1300.git
  • git fetch fgn1300
  • git rebase fgn1300/master
  • +or+ git merge --no-ff fgn1300/master
  • $ git rebase fgn1300/master
    First, rewinding head to replay your work on top of it...
    Applying: remove old wifi driver
    Applying: add wifi drivers
    Applying: add wifi function
    Using index info to reconstruct a base tree...
    :77: trailing whitespace.
    /igmpproxy/src/build.h
    :78: trailing whitespace.
    /igmpproxy/src/igmpproxy
    :79: trailing whitespace.
    /improxy-master/improxy
    warning: 3 lines add whitespace errors.
    Falling back to patching base and 3-way merge...
    Auto-merging source/vendors/Mediatek/MT7623/config/256M_256M_config.linux-3.10.20.x
    Auto-merging source/vendors/Mediatek/MT7623/RT2860_default_vlan
    CONFLICT (content): Merge conflict in source/vendors/Mediatek/MT7623/RT2860_default_vlan
    Auto-merging source/user/rt2880_app/scripts/internet.sh
    Failed to merge in the changes.
    Patch failed at 0003 add wifi function
    
    When you have resolved this problem run "git rebase --continue".
    If you would prefer to skip this patch, instead run "git rebase --skip".
    To check out the original branch and stop rebasing run "git rebase --abort".
  • modify RT2860_default_vlan
  • git add source/vendors/Mediatek/MT7623/RT2860_default_vlan
  • git rebase --continue
  • git push
    $ git push
    To https://github.com/amr1000.git
     ! [rejected]        master -> master (non-fast-forward)
    error: failed to push some refs to 'https://github.com/amr1000.git'
    To prevent you from losing history, non-fast-forward updates were rejected
    Merge the remote changes (e.g. 'git pull') before pushing again.  See the
    'Note about fast-forwards' section of 'git push --help' for details.
  • git push --force

Reference


台南小新 發表在 痞客邦 留言(0) 人氣()

merge 時有衝突

$ git merge fgn1300/master
Auto-merging RT2860_default_vlan
CONFLICT (content): Merge conflict in RT2860_default_vlan
Automatic merge failed; fix conflicts and then commit the result.

台南小新 發表在 痞客邦 留言(0) 人氣()

  • git clone --mirror https://aa.bb.cc/gitlab/enos/fgn1300.git
    $ git clone --mirror https://aa.bb.cc/gitlab/enos/fgn1300.git
    Cloning into bare repository 'fgn1300.git'...
    Username for 'https://aa.bb.cc': enos
    Password for 'https://enos@aa.bb.cc': 
    remote: Counting objects: 107148, done.
    remote: Compressing objects: 100% (85979/85979), done.
    Receiving objects: 100% (107148/107148), 308.07 MiB | 383 KiB/s, done.
    remote: Total 107148 (delta 21437), reused 104578 (delta 18915)
    Resolving deltas: 100% (21437/21437), done.
    $ ls
    fgn1300.git
  • cd fgn1300.git
  • git remote set-url --push origin git@cc.bb.aa:fg/fgn1300.git
  • git fetch -p origin
    Username for 'https://aa.bb.cc': enos
    Password for 'https://enos@aa.bb.cc':
  • git remote -v
    origin https://aa.bb.cc/gitlab/enos/fgn1300.git (fetch)
    origin  git@cc.bb.aa:fg/fgn1300.git (push)
  • git push --mirror
    $ git push --mirror
    Counting objects: 107148, done.
    Delta compression using up to 2 threads.
    Compressing objects: 100% (83457/83457), done.
    Writing objects: 100% (107148/107148), 308.07 MiB | 4.34 MiB/s, done.
    Total 107148 (delta 21437), reused 107148 (delta 21437)
    To git@cc.bb.aa:fg/fgn1300.git
     * [new branch]      master -> master
  • 原來的 git 工作目錄記得變更 remote url,執行 git remote set-url --push origin git@cc.bb.aa:fg/fgn1300.git 即可。

台南小新 發表在 痞客邦 留言(0) 人氣()

錯誤訊息

$ git push
Counting objects: 90215, done.
Compressing objects: 100% (88103/88103), done.
Write failed: Broken pipe90213)   
fatal: The remote end hung up unexpectedly
error: pack-objects died of signal 13
error: failed to push some refs to 'git@111.111.111.111:enos/test.git'

解決步驟

  • git config http.postBuffer 1073741824
    無效

台南小新 發表在 痞客邦 留言(0) 人氣()

  • Update your system
    sudo apt-get update
    sudo apt-get upgrade
  • Create a git user for GitLab

台南小新 發表在 痞客邦 留言(0) 人氣()

iperf-3.0.11

  • 修改 .gitignore
    移除 Makefile 這一行

台南小新 發表在 痞客邦 留言(0) 人氣()

git command

  • git remote -v
    欲瞭解目前已加進來的遠端儲存庫,可執行 git remote 命令。 它會列出當初加入遠端儲存庫時指定的名稱。 若目前所在儲存庫是從其它儲存庫複製過來的,至少應該看到 origin,也就是 Git 複製儲存庫時預設名字。

台南小新 發表在 痞客邦 留言(0) 人氣()

當一個新專案加入 svn 時,一些經過 configure 之後的 source code 在 svn checkout 再編譯都會出一些問題。主要是因為在 configure 之後又對 Makefile 做了一些修改才會有問題。此時,要修改 Makefile 把 config.status --recheck 這一行指令槓掉就好了。這個指令會重新執行 configure 指令,把 Makefile 都重寫,造成後來修改的地方被覆蓋掉了。

可是在把 svn 專案導入到 git 時,又發生錯誤了。google了好久也找不到答案,Makefile 又寫的讓我看不懂,快第一行的 all: all-recursive,我就找不到 all-recursive 在那里。最後把 Makefile: 後面的資料都刪除就好了。

台南小新 發表在 痞客邦 留言(0) 人氣()

subversion

vi /etc/apache2/conf-enabled/svn.conf
設定 svn for apache2,新增帳戶檢查機制,請修改為下列文字。
  DAV svn
  SVNParentPath /var/svn
  SVNListParentPath on
  AuthType Basic
  AuthName "SVN Repository"
  AuthUserFile /var/svn/account
  Require valid-user

trac+apache2

vi /etc/apache2/conf-enabled/trac.conf

台南小新 發表在 痞客邦 留言(0) 人氣()

svn: E175012: Connection timed out

參考資料


台南小新 發表在 痞客邦 留言(0) 人氣()

安裝步驟

  • sudo apt-get install openssl
    安裝 OpenSSL 來產生需要的憑證
  • sudo a2enmod ssl

台南小新 發表在 痞客邦 留言(0) 人氣()

每一個專案的 trac.ini 有很多相同的地方,所以把相同的地方寫在一個檔案,再利用 inherit file 方式加到 trac.ini,就不用每次寫一堆了。新增一個檔案 /var/trac/trac.ini,寫入下列資料。

[components]
# Subversion
tracopt.versioncontrol.svn.* = enabled
tracopt.ticket.commit_updater.* = enabled
# TracWiki WYSIWYG Editor Plugin
tracwysiwyg.* = enabled
# Trac Ticket Template Plugin
tickettemplate.* = enabled
# CC selector plugin
cc_selector.* = enabled
# Account Manager Plugin
acct_mgr.admin.* = enabled
acct_mgr.api.* = enabled
acct_mgr.htfile.htpasswdstore = enabled
acct_mgr.notification.* = enabled
acct_mgr.pwhash.* = enabled
acct_mgr.web_ui.* = enabled
acct_mgr.web_ui.resetpwstore = disabled
trac.web.auth.loginmodule = disabled

[cc_selector]
show_fullname = true
username_blacklist =

[tickettemplate]
field_list = summary, description, reporter, owner, priority, cc, milestone, component, version, type
enable_custom = true

[account-manager]
htpasswd_file = /var/svn/account
htpasswd_hash_type = md5
password_store = HtPasswdStore
register_check =
  • su

台南小新 發表在 痞客邦 留言(0) 人氣()

功用

  • Refs #123
    在做 svn commit 只要在 --message 訊息裏加入 refs #no 就可以在 #no ticket 新增一筆 comment。
  • Fixes #123

台南小新 發表在 痞客邦 留言(0) 人氣()

要記住專案所有人的帳號真的有點困難,如果有一個帳號清單可供選擇,那就真的太方便了,CC selector plugin 就是為了做這件事,讓你不用麻煩腦袋不夠用了。

安裝步驟

  • easy_install https://trac-hacks.org/svn/ccselectorplugin/trunk/

台南小新 發表在 痞客邦 留言(0) 人氣()

每次新增一個 ticket,都是從空白頁面開始,對於習慣的人是無所謂,但對於新手就有困難了。Trac Ticket Template Plugin 可以先幫各種 ticket type 建立一個模板,讓新手也有一個依循。

安裝步驟

  • easy_install https://trac-hacks.org/svn/tractickettemplateplugin/1.0/

台南小新 發表在 痞客邦 留言(0) 人氣()

要編輯 Trac 的 wiki 還要學習專用的語法,實在有夠不方便。這個 plugin 就是用來給不想學 wiki 語法的懶人。所見即所得的編輯頁面,不用去記任何 wiki 語法,真是太方便了。

安裝步驟

  • easy_install https://trac-hacks.org/svn/tracwysiwygplugin/0.12

台南小新 發表在 痞客邦 留言(0) 人氣()

安裝 Account Manager Plugin for Trac 的主要原因是可以用讓使用者自己修改密碼。trac 如果採用 apache 驗證方式是無法修改密碼,也無法從網頁新增使用者,非常麻煩。改用 Account Manager Plugin 就方便多了,而且也可以保留訪客模式,跟使用者模式同時使用。

安裝步驟

  • easy_install https://trac-hacks.org/svn/accountmanagerplugin/tags/acct_mgr-0.4.4

台南小新 發表在 痞客邦 留言(0) 人氣()

  • touch /var/svn/account
    建立一個空的密碼檔案
  • htpasswd /var/svn/account admin

台南小新 發表在 痞客邦 留言(0) 人氣()

變更使用者為 root

  • sudo passwd root
    ubuntu 預設 root 空白密碼,但又限制空白密碼無法登入,所以要先變更 root 密碼才能登入。
  • sudo su

台南小新 發表在 痞客邦 留言(0) 人氣()