我们在创建一个Git工程项目时, 至少可以看到一个名为 origin 的远程库, git 默认使用这个名字来标识你本地工程所对应的远程仓库。
一. 添加远程仓库:
一个git工程除了默认的origin 仓库外,还可以为其添加一个新的远程仓库, 可以随意指定一个名字, 运行 git remote add [shortname] [url]
- $ git remote add new_repository_name git://github.com/paulboone/ticgit.git
- $ git remote
- origin
- new_repository_name
1. 首先添加你从github上fork的源仓库到本地的git工程
- $ git remote add source_repository_name [url]
- (1)同步源仓库的信息到本地
- $ git remote update source_repository_name
- (2)将源仓库的信息merge到本地分支:
- $ git checkout branch_name
- $ git rebase source_repository_name/branch_name
3. $ git push 将最新同步的代码和修改,提交到你的origin仓库
4. Github上提出Push Request即可,将你的origin仓库的所有修改提交到source_repository_name仓库
GitHub常用的开发协同流程为:将别人的仓库fork成自己的origin仓库 → git clone origin仓库到本地 → 本地添加fork源仓库 → 工作前先git remote update下fork源保持代码较新 → coding → push回自己 → github上提出Push Request即可
Git 常见命令一览表:
说明/备注 | 命令 | 备注 |
保存更新 | git add [-i] | -i 逐个确认 |
检查更新 | git status | |
提交更新 | git commit [-a] -m "<更新说明>" | -a 包含增删 -m 说明信息 |
克隆到本地 | git clone <git地址> | |
远端抓取 | git fetch | |
与本地当前branch合并 | git merge | |
抓取并合并 | git pull [<远端别名>] [<远端branch>] | |
相当于 git fetch + git merge | ||
推送到远端 | git push [-f] [<远端别名>] [<远端branch>] | |
-f 强制覆盖 | ||
设置一个远端别名 | git remote add <别名> <git地址> | |
列出远端 | git remote -v | -v 详细信息 |
查看远端信息 | git remote show <远端别名> | |
重命名远端 | git remote rename <远端别名> <新远端别名> | |
删除远端 | git remote rm <远端别名> | |
更新branch列表 | git remote update [<远端别名>] | |
列出branch | git branch [-r] [-a] | -r 远端 -a 全部 |
新建branch | git branch <branch名> | |
切换branch | git checkout <branch名> | |
创建本地branch对应远端branch | git checkout -b <本地branch> -t <远端别名>/<远端branch> | |
-b 新建branch;-t 绑定远端branch | ||
设置HTTP代理 | git config --global http.proxy "<HTTP代理>" | |
恢复默认 Linux系统编辑 ~/.gitconfig 文件 | ||
设置电子邮件 | git config --global user.email "<电子邮件>" | |
设置用户名 | git config --global user.name "<用户名>" | |
查看标签(tag) | git tag [--list] | |
打包、快照(snapshot) | git archive [--prefix=<前缀路径>/] -o <文件名及格式> <branch或标签> | |
--prefix 指定前缀路径;格式可以是 zip, tar | ||