1.Git 创建仓库
2.使用git命令行将本地仓库代码上传到github或gitlab远程仓库
一、初始化本地代码仓库
git init
二、修改代码,并提交到远程仓库
# 01 修改代码 eg. hello.py
# 02 添加
git add hello.py
# 03 注释
git commit -m "update hello.py"
# 04 推送至远程仓: git push <远程主机名> <本地分支名>:<远程分支名>
git push origin master
三、添加一个新建的文件夹
# 添加文件夹 eg. word
git add word/
但是必须注意:该新建文件夹里面必须有内容才可以添加成功
四、下载非主分支到本地
# 01 下载主分支
git clone http://git.××××××.cn/××××××/××××××.git
# 02 查看分支
git branch -r
origin/HEAD -> origin/master
origin/master
origin/test
# 更新为test分支
git checkout origin/test
五、只提交指定修改的文件夹或文件
# 修改了文件夹test/里的内容,可以一次性提交test/文件夹里所有文件的修改
git add test/
git commit -m "update"
git push origin master
# 提交指定文件的修改,例如test/post.py
git add test/post.py
git commit -m "update"
git push origin master
六、查看当前关联的分支
git branch
或者
git branch -a
七、git add 后如何撤销
git reset HEAD
八、同步本地代码时出现冲突:Please, commit your changes or stash them before you can merge.
出现这个问题的原因是其他人修改了xxx.php并提交到版本库中去了,而你本地也修改了xxx.php,这时候你进行git pull操作就好出现冲突了,解决方法,在上面的提示中也说的很明确了
git stash
git pull
git stash pop
git stash: 备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中。
git stash pop: 从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并恢复。
git stash list: 显示Git栈内的所有备份,可以利用这个列表来决定从那个地方恢复。
git stash clear: 清空Git栈。此时使用gitg等图形化工具会发现,原来stash的哪些节点都消失了。
九、git clone 指定分支
git clone -b 分支名称 项目地址
十、解决冲突 error: The following untracked working tree files would be overwritten by merge
git fetch origin
git clean -f
git reset --hard origin/分支名称
十一、回滚代码(回退至某个版本)
首先查找要回滚的版本
git log
然后回滚:
git reset --hard {commit_id}
示例:
git reset --hard 7d723423d823i349b49e4805o94v390b
十二、回滚代码后提交
回滚代码后,修改本地代码,再提交会让你先pull,但是pull之后本地修改的代码就被覆盖了,方法是:
进行强制推送
git push --force origin 分支名称
十三、切换本地分支
当前工程分为多个分支进行开发,切换方法如下:
# 当前为master分支,切换到dev分支
git checkout dev
# 当前为dev分支,切换到master分支
git checkout master
十四、创建本地分支并关联远程分支
git checkout 本地分支名 origin/远程分支名