创建 Git repository
#在指定的目录创建(初始化)git仓库
git init
配置Git全局用户信息
git config --global user.name "<username>"
git config --global user.email <email>
# 例如:
git config --global user.name "CodePlayer"
git config --global user.email CodePlayer@foxmail.com
将指定的文件或目录纳入Git版本控制(添加到暂存区域索引中)
# 添加文件到版本控制中(相对于git仓库的根目录)
git add <filename>|<dirname>
# 例如:
git add README.md
git add src/core
# 可以使用通配符"*"(单个目录层级)、"**"(多个目录层级)、"?"(单个字符)
git add src/*.js
git add src/**/*.css
# 可以一次性添加多个文件或目录
git add src/*.js src/*.css
从Git索引(暂存区域)中移除文件
# 用法与git add类似:
git rm <filename>|<dirname>
提交已经添加到Git索引(暂存区域)中的文件
git commit -m '这里是注释'
从现有Git仓库克隆
git clone <git_url>
# 克隆现有仓库
git clone git://github.com/CodePlayer/ready-x.git
关联远程Git仓库
git remote add <remote_repo_alias> <git_url>
git branch --set-upstream-to=<remote_repo_alias>/<branch> <local_branch>
# 例如:
git remote add origin git://github.com/CodePlayer/ready-x.git
git branch --set-upstream-to=origin/master master
# 查看已有的远程仓库
git remote -v
变更远程仓库地址
git remote set-url <remote_repo_alias> <new_git_url>
# 例如:
git remote set-url origin git://github.com/CodePlayer/ready-x.git
从远程Git仓库获取数据,并合并到本地当前的Git分支
git pull <remote_repo_alias> <branch>
# 例如:
git pull origin master
# 这相当于下面两行命令的合并:
git fetch origin master
git merge origin/master
# 如果远程已经存在仓库文件,则添加强制合并选项,否则会报错:
# fatal: refusing to merge unrelated histories
git pull origin master --allow-unrelated-histories
推送本地的Git仓库的提交到远程
# 将指定的本地分支推送到指定的远程仓库分支
git push <remote_repo_alias> [local_branch]:[remote_branch]
# 例如:(将本地的 master 分支推送到别名为 origin 的远程仓库的 master 分支)
# 如果远程仓库没有 master 分支,则会自动新建
git push origin master:master
# 将本地的 master 分支推送到远程仓库 origin 中与之对应关联的分支(需要先将两个分支进行跟踪关联)
git push origin master
# 将本地的当前分支推送到远程仓库 origin 中与之对应关联的分支(需要先将两个分支进行跟踪关联)
git push origin
# 删除远程仓库的 master 分支(将本地的空分支推送到远程的 master 分支就表示删除)
git push origin :master
基于当前本地分支新建分支,并切换到新建的分支
git checkout -b <new_branch>
# 例如:
git checkout -b dev
#这相当于如下两行代码:
git branch dev
git checkout dev
切换Git分支
git checkout <branch>
# 例如:
git checkout dev
0 条评论
撰写评论