Settings sync 配置与使用

1. settings sync 配置与使用

  1. 参考文章@我辈敢怀凌云志
  2. 参考文章@胖茄子

!!!注意:settings sync 下载之后,一定要现在 忽略文件夹中,添加 History 忽略历史文件夹。

1. 获取令牌

步骤

    1. 点击 github 头像,选择 settings选项
      • 请添加图片描述
    1. 进入 settings 后,左边最下面选择 Developer settings
      • 请添加图片描述
    1. 进入 deve settings 后,左边最下面选择 Persons access tokens,然后选择 tokens(classic)
      • 请添加图片描述
    1. 选择 generate new token ,下拉框中选择第二个选项.
      • 请添加图片描述
    1. 名字随便起一个,token 类型就选择 gists , 然后点击下面的提交.
      • 请添加图片描述
    1. 提交之后 会生成一个 令牌,一定要保存好,页面关闭后就不能再次查看了

2. 获取 gistsId

步骤:

    1. 点击 github 头像,选择 Your gists选项
    • 请添加图片描述
    1. 点击 github 头像旁边的 + 加号, gists description ,和内容随便填写.
    • 请添加图片描述
    1. 点击创建 会生成一个gistsId ,settings sync 会用到.
    • 请添加图片描述

查看 gists 中的文件数。

在这里插入图片描述

2. setting sync 插件 没有默认忽略文件夹History 同步不起作用问题

参考文章@newTeethCanRepaired

upload 会上传 history里面的文件,这样git 上的 gist 文件数量特别多,超出建议文件数,本地的很多配置并没有按照原来版本的>格式上传上去,导致你的 download 同步的话不起作用。

解决

    1. 现有的一个方式就是忽略掉history文件夹
      在这里插入图片描述
    1. 忽略 history 文件后重新上传,然后在 github 中查看 gists 的文件数,不超过 100 的话,应该就可以下载成功。

打开 settings sync 配置页面

ctrl + shift + p > 输入 sync > 选择 高级选项

  • 在这里插入图片描述

选择 打开设置

  • 在这里插入图片描述

配置 sync

  • 在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Channels 是一个 Django 应用程序,它使 Websockets 和长轮询等协议易于使用。通道可以使 Django 与其他实时系统集成(如 Node.js 或 Go),并允许 Django 处理实时事件。 以下是安装和配置 Channels 的步骤: 1. 首先,使用 pip 安装 Channels: ``` pip install channels ``` 2. 在 Django 项目的 settings.py 文件中添加以下配置: ``` INSTALLED_APPS = [ # ... 'channels', # ... ] ASGI_APPLICATION = "<project_name>.routing.application" CHANNEL_LAYERS = { "default": { "BACKEND": "channels.layers.InMemoryChannelLayer" }, } ``` 其中,`<project_name>` 是你的 Django 项目名称,`CHANNEL_LAYERS` 指定了默认的 Channel layer 配置。 3. 在项目的根目录下创建一个 routing.py 文件,并添加以下内容: ``` from channels.routing import ProtocolTypeRouter, URLRouter from django.urls import path from . import consumers application = ProtocolTypeRouter({ "websocket": URLRouter([ path("ws/<room_name>/", consumers.ChatConsumer.as_asgi()), ]), }) ``` 其中,`ChatConsumer` 是一个示例 consumer,用于处理 WebSocket 连接。你可以根据自己的需求创建其他的 consumers。 4. 创建一个 consumers.py 文件,并添加以下内容: ``` import json from channels.generic.websocket import AsyncWebsocketConsumer class ChatConsumer(AsyncWebsocketConsumer): async def connect(self): self.room_name = self.scope['url_route']['kwargs']['room_name'] self.room_group_name = 'chat_%s' % self.room_name # Join room group await self.channel_layer.group_add( self.room_group_name, self.channel_name ) await self.accept() async def disconnect(self, close_code): # Leave room group await self.channel_layer.group_discard( self.room_group_name, self.channel_name ) # Receive message from WebSocket async def receive(self, text_data): text_data_json = json.loads(text_data) message = text_data_json['message'] # Send message to room group await self.channel_layer.group_send( self.room_group_name, { 'type': 'chat_message', 'message': message } ) # Receive message from room group async def chat_message(self, event): message = event['message'] # Send message to WebSocket await self.send(text_data=json.dumps({ 'message': message })) ``` 这是一个使用 Channel layer 处理 WebSocket 连接的示例 consumer。 5. 在 Django 的 urls.py 文件中添加以下内容: ``` from django.urls import path from .views import chat_room urlpatterns = [ path('chat/<room_name>/', chat_room, name='chat_room'), ] ``` 其中,`chat_room` 是一个视图函数,用于渲染聊天室页面。 6. 在 chat_room 视图函数中,使用 `channels.layers.get_channel_layer()` 获取 channel layer,并通过 `async_to_sync()` 将异步方法转换为同步方法: ``` from channels.layers import get_channel_layer from asgiref.sync import async_to_sync def chat_room(request, room_name): channel_layer = get_channel_layer() async_to_sync(channel_layer.group_send)( 'chat_%s' % room_name, { 'type': 'chat_message', 'message': '欢迎来到聊天室!' } ) return render(request, 'chat_room.html', { 'room_name': room_name }) ``` 这将向指定聊天室的所有连接发送一条欢迎消息。 7. 最后,在聊天室页面中使用 JavaScript 连接 WebSocket: ``` const chatSocket = new WebSocket( 'ws://' + window.location.host + '/ws/' + roomName + '/' ); chatSocket.onmessage = function(e) { const data = JSON.parse(e.data); document.querySelector('#chat-log').value += (data.message + '\n'); }; document.querySelector('#chat-message-input').focus(); document.querySelector('#chat-message-input').onkeyup = function(e) { if (e.keyCode === 13) { // Enter, 发送消息 const messageInputDom = document.querySelector('#chat-message-input'); const message = messageInputDom.value; chatSocket.send(JSON.stringify({ 'message': message })); messageInputDom.value = ''; } }; ``` 这将监听 WebSocket 的消息,并在聊天室页面中显示。用户输入消息后,将通过 WebSocket 发送到服务器。 这就是 Channels 的基本安装和配置步骤。你可以根据自己的需求进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值