柳州网站建设找华仔,想学平面设计从哪开始,开发公司自平衡,网站建设主要做什么一#xff0c;常用操作 # 将所有修改的文件从工作区放入暂存区 git add ./ -- 放入暂存区 # 添加commit信息#xff0c;文件从暂存区提交到本地仓库中 git commit -m xxx -- 提交到本地仓库 # 拉取远程主机某个分支#xff0c;再与本地分支合并 git pull --常用操作 # 将所有修改的文件从工作区放入暂存区 git add ./ -- 放入暂存区 # 添加commit信息文件从暂存区提交到本地仓库中 git commit -m xxx -- 提交到本地仓库 # 拉取远程主机某个分支再与本地分支合并 git pull -- 远程与本地合并 # 把本地仓库的所有内容推送到远程仓库上 git push -- 推送到远程仓库上 #首次添加远程分支 (分支特性-时间- 版本号) git push --set-upstream origin fix-202312-1.0.11 # 删除远程分支 git push origin --delete xxxxx / git branch -d xxxx #更新远程分支 git remote update origin -p 以commit 或者 Tag 创建新的分支 git checkout -b branch name SHA1 git checkout -b New Branch Name TAG Name 在当前分支上执行git stash命令。将当前分支存起来id为 84c682f 用 git stash list 命令去查看我们“存储”的列表 git push --force origin master // 强制推送 分析这是由于你拉取pull分支前进行过merge合并更新分支操作而其他人在你之前已经push过一个版本导致版本不一致 第一种解决方法比较简单 执行git config pull.rebase false 默认将pull下来的代码与现有改动的代码进行合并 但是可能会造成代码冲突需要处理下这个问题代码冲突如果2个人都改了同一个文件需要联系之前push的同学看看这块代码怎么保存 1.1 新建代码库 # 在当前目录新建一个Git代码库 git init #新建一个目录将其初始化为Git代码库 git init [project-name] # 下载一个项目和它的整个代码历史 git clone [url] 1.2 配置 # 设置提交代码时的用户信息 git config [--global] user.name [name] git config [--global] user.email [email address] 1.3 remote管理 # 查看远程主机网址 git remote -v # 删除远程主机 git remote rm origin # 添加远程主机 git remote add origin https:git.xxxx.git 1.4添加和撤销操作 # 该文件内容恢复到上个commit状态 git checkout -- file # 所有文件恢复到上个commit状态 git checkout . # 回退到某个版本 git reset –-hard f109e83a5ae23766c86e9d259d18271a3ab53c16 #回退所有内容到上一个版本 git reset HEAD^ 以某个commit 创建分支 git checkout fbcdb83774c325b8383dd1f9a758ebbec5d9723d -b test_2401 // 12-02 git checkout 6f9cc664bb78b982b63305217369fc7d3084b626 -b test_2401 大概意思是本地库和远程库没有同步导致无法提交合并冲突导致无法push git pull origin main --allow-unrelated-histories //从远端仓库拉去不相关历史
git push origin main //推送到远端main分支1.6 tag操作 # 展示标签
git tag
# 打标签和注释
git tag -a v0.1.2 -m 0.1.2版本
# 给指定的commit打标签
git tag -a v0.1.1 9fbc3d0
# git push 操作不会将tag上传到服务器需要单独上传将v0.1.2标签提交到git服务器
git push origin v0.1.2
# 将本地所有标签一次性提交到git服务器
git push origin --tags
# 删除标签
git tag -d v0.1.2
# 删除远程的tag
git push origin --delete tag tagname 二 分支操作 # 列出所有本地分支和远程分支
git branch -a
# 创建并切换分支
git checkout -b test
# 切换到远程分支
git fetch
git checkout -b test origin/test
# 新建一个分支指向指定commit
git branch [branch] [commit]
# 新建一个分支指向某个tag
git checkout -b [branch] [tag]
# 合并指定分支到当前分支
git merge [branch]
# 选择一个commit将该commit改动下的代码合并进当前分支
git cherry-pick [commit]三其它汇总 2.1 github上初始一个项目 echo # ceshi README.md
git init
git add README.md
git commit -m first commit
git remote add origin gitgithub.com:archer-wong/ceshi.git
git push -u origin master2.2 重命名远程分支 先删除远程分支重命名本地分支最后提交一个新的远程分支 git push --delete origin devel
git branch -m devel develop
git push origin develop2.3.gitignore文件 .gitignore 配置文件用于配置不需要加入版本管理的文件 1、语法 所有空行或者以 开头的行都会被 Git 忽略。 可以使用标准的 glob 模式匹配。 匹配模式可以以/开头防止递归。 匹配模式可以以/结尾指定目录。 要忽略指定模式以外的文件或目录可以在模式前加上惊叹号!取反。 所谓的 glob 模式是指 shell 所使用的简化了的正则表达式。 星号*匹配零个或多个任意字符 [abc]匹配任何一个列在方括号中的字符这个例子要么匹配一个 a要么匹配一个 b要么匹配一个 c 问号?只匹配一个任意字符 如果在方括号中使用短划线分隔两个字符表示所有在这两个字符范围内的都可以匹配比如 [0-9] 表示匹配所有 0 到 9 的数字。 使用两个星号*) 表示匹配任意中间目录比如a/**/z 可以匹配 a/z, a/b/z 或 a/b/c/z等。 2、示例 # 忽略 .a 文件
*.a
# 否定忽略 lib.a, 尽管已经在前面忽略了 .a 文件
!lib.a
# 仅在当前目录下忽略 TODO 文件 但不包括子目录下的 subdir/TODO
/TODO
# 忽略 build/ 文件夹下的所有文件
build/
# 忽略 doc/notes.txt, 不包括 doc/server/arch.txt
doc/*.txt
# 忽略所有的 .pdf 文件 在 doc/ directory 下的
doc/**/*.pdf3、.gitignore不生效问题 如果某些文件已经被纳入了版本管理中则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除改变成未track状态然后再提交 git rm -r --cached .
git add .
git commit -m update .gitignore四合并冲突解决 需要你在本地把master合到你的发布分支解决完冲突之后再push到远端 git merge master --allow-unrelated-histories 问题复现 在master分支已经做了一些提交这个时候想要切换到dev分支。 如果修改的文件未提交时当切换分支的时候会提示以下错误信息 error: Your local changes to the following files would be 英文大意当切换分支的时候你当前修改的文件将会被覆盖所以git需要你先提交你的变动或者在你切换分支之前暂存它们。 根据提示有两种解决方案 提交当前的变动(此方案会多出来一条提交记录) git add . git commit -m 切换分支之前暂存变动 使用stash命令,此操作会将你当前工作区已修改未提交的内容暂存起来。并且以上一次提交的commit 信息作为记录。 git stash 五、Mac系统下查看和生成SSH Key 什么是公钥 很多服务器都是需要认证的ssh认证是其中的一种。在客户端生成公钥把生成的公钥添加到服务器你以后连接服务器就不用每次都输入用户名和密码了。很多git服务器都是用ssh认证方式你需要把你生成的公钥发送给代码仓库管理员让他给你添加到服务器上你就可以通过ssh自由地拉取和提交代码了。 一、打开vimterminal.app查看本地是否存在SSH-Key
ls -al ~/.ssh如果vim输出的是如下内容证明本地没有生成的SSH Key请执行第二步。
No such file or directory如果vim输出的是如下内容 证明本地已经存在SSH Key 文件请执行第四步。
id_rsa id_rsa.pub二、如果没有生成新的SSH Key
ssh-keygen -t rsa -Cyou_email 三、生成并添加SSH Key
ssh-add ~/.ssh/id_rsa四、查看SSH Key
cat .ssh/id_rsa.pub六、Windows查看本机SSH公钥生成公钥 查看 ssh 公钥方法 我们要想生成SSH key首先就得先安装 SSH对于 Linux 和 Mac 系统其默认是安装 SSH 的而对于 Windows 系统其默认是不安装 SSH 的不过由于我们安装了 Git Bash其也应该自带了 SSH. 可以通过在 Git Bash 中输入ssh命令查看本机是否安装 SSH 此结果表示我们已经安装 SSH 啦接下来输入ssh-keygen -t rsa命令表示我们指定 RSA 算法生成密钥然后敲三次回车键期间不需要输入密码之后就就会生成两个文件分别为id_rsa和id_rsa.pub即密钥id_rsa和公钥id_rsa.pub. 对于这两个文件其都为隐藏文件。 打开你的 git bash 窗口进入 .ssh 目录cd ~/.ssh找到 id_rsa.pub 文件ls查看公钥cat id_rsa.pub 或者 vim id_rsa.pub