Git使用方法

本机:

先 git add Filename , 再 git commit -m "本次名称" ,其中 git commit -am "本次修改名称" (不用add可直接上传)

git init 文件夹需先初始化 , git status 查看当前修改过的和未上传的状态 , git log 查看上传记录, git show 查看最近一次上传详细内容

撤销undo操作:

git checkout -- Filename 将对该文件所做的修改都撤销

若文件已add到暂存区,则git reset HEAD Filename将文件恢复到工作区,之后使用checkout命令撤销修改

若文件已commit到版本库,则需要版本回退

版本回退:

  • HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id

  • 穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。

  • 要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本

服务器端:

从远程服务器克隆一个一模一样的版本库到本地,复制的是整个版本库,叫做clone.(clone是将一个库复制到你的本地,是一个本地从无到有的过程)
从远程服务器获取到一个branch分支的更新到本地,并更新本地库,叫做pull.(pull是指同步一个在你本地有版本的库内容更新的部分到你的本地库)
git pull相当于是从远程获取最新版本并merge(合并)到本地 ,即git pull = git fetch + git merge

先git clone https://github.com/D-Major/cd61b +(可选)本地目录名,克隆到本地文件夹,该命令会在本地主机生成一个目录,与远程主机的版本库同名,如果要是制定不同的目录名,可以将目录名作为git clone 命令的第二个参数

git remote add repo-name(如origin) repo-url(如https://github.com/D-Major/cd61b),把别人的库拉过来,起个名

git remote -v 查看当前所有库名称和对应url

git pull repo-name master(远程分支)+(可选)本地分支, 获取对应库最近一次备份

如果提示“fatal: refusing to merge unrelated histories”则强制合并:

git pull --rebase --allow-unrelated-histories repo-name master

之后修改文件,git add ,git commit ,push到服务器:

git push repo-name master

push之前要先pull到本地

删除远程分支: git push origin :分支名

重命名远程分支:

git branch -m <old_name> <new_name> 在本地的clone版本中重命名分支

git push origin :<old_name> 删除远程分支

git push origin <new_name>将本地的新分支名push到远程

补充:本地git 操作

git branch <new_branch_name> 建立本地 local branch
git branch -m <old_name> <new_name> 改名字 (如果有同名會失敗,改用 -M 可以強制覆蓋)
git branch 列出目前有那些 branch 以及目前在那個 branch
git checkout <branch_name> 切換 branch (注意到如果你有檔案修改了卻還沒 commit,會不能切換 branch,解法稍後會談)
git checkout -b <new_branch_name> (<from_branch_name>) 本地建立 branch 並立即 checkout 切換過去
git branch -d <branch_name> 刪除 local branch

posted @ 2018-09-20 16:20  DMajor  阅读(118)  评论(0编辑  收藏  举报