git常用命令
新建本地仓库
git clone -b <branch_name> <branch_address>
clone Clone a repository into a new directory. clone命令无法在已是git的目录里clone.
git init 将当前文件夹初始化为git目录。
git --bare init .git中不保留历史版本记录,以后有远端仓库提交代码时,不会冲突。
git remote rm origin 删除关联的远程仓库
git remote add 远程仓库url 关联远程仓库。
关联远端仓库后,还需要fetch,merge,将远端仓库更新到本地。
更新本地仓库
git fetch origin :<branch_name>
如果只是git fetch,会创建并更新
远程仓库的所有分支的本地远程分支,且设定当前分支的
FETCH_HEAD
为远程服务器的master分支。
fetch下来的代码需要merge,才算真正进仓库,也可以用git pull替代fetch+merge
提交本地仓库到远程仓库
git add /文件路径
把修改缓存。如果修改多,例如增加了几十兆的库文件,可能会导致add缓存很长时间。建议定位到新增目录再add。
git add -A
表示添加所有内容,
git add .
表示添加新文件和编辑过的文件不包括删除的文件;
git add -u
表示添加编辑或者删除的文件,不包括新添加的文件。
git commit -m <msg> 提交文件到本地仓库缓存
git push origin 提交到远程仓库
合并仓库
git merge <branch_name> --commit -m <msg> 将branch_name仓库下的代码合并到当前仓库下。
merge 后需要commit
切换仓库
git checkout <branch_name>
在push本地仓库代码前,需先fetch,不然服务器代码版本比本地仓库版本新的话,会push不上去。
git可以在一个仓库里管理多个独立分支,创建独立分支命令: git checkout --orphan 分支名。在每个分支里添加修改的文件会被记录在.git中该分支相应栏里。git为每个分支分配独立硬盘空间,当没有checkout到该分支时,该分支在文件浏览器中不可见,但在硬盘上是存在的。
rm -rf .git 删除
git config –global core.autocrlf false //禁用自动转换
git init //初始化git库